大数据运维面试题
华为大数据运维面试题可能涵盖多个方面,以下是一些可能的面试问题及解析,这些问题旨在考察应聘者的技术知识、问题解决能力和对大数据运维的理解:
一、技术知识类问题
-
简述大数据运维的主要职责和工作内容
- 回答示例:大数据运维工程师主要负责大数据平台的日常运营和维护,包括数据收集、存储、处理和分析等各个环节的监控、优化和故障排除。工作内容可能包括系统部署、性能调优、数据安全、容灾备份以及与其他团队的协作等。
-
请描述一下Hadoop集群的架构及其主要组件
- 回答示例:Hadoop集群通常由NameNode、DataNode、ResourceManager、NodeManager等组件组成。NameNode负责管理文件系统的命名空间和数据块映射信息,DataNode负责存储实际的数据块;ResourceManager负责资源的分配和管理,NodeManager则负责在单个节点上管理容器和应用程序。
-
如何增加NameNode的内存以提高Hadoop集群的性能
- 回答示例:可以通过修改hadoop-env.sh文件中的HADOOP_NAMENODE_OPTS参数来增加JVM分配给NameNode的内存。例如,可以增加-Xmx参数来设置最大堆内存。此外,还可以优化其他Hadoop配置参数,如dfs.namenode.handler.count等,以提高NameNode的并发处理能力。
-
Kafka消费者消费数据的流程是怎样的
- 回答示例:Kafka消费者消费数据的流程涉及从消费者组管理、分区分配到消息拉取和处理等多个层次。在进程和线程层面,消费者通常以多线程模式运行,每个消费者实例内部有多个消费者线程,每个线程负责处理一个或多个分区的消息。
二、问题解决能力类问题
-
在大数据运维过程中,你遇到过哪些常见问题,并如何解决的
- 回答示例:可能遇到的问题包括数据丢失、系统性能下降、数据倾斜等。对于数据丢失问题,可以通过检查日志文件、恢复备份数据等方式进行解决;对于系统性能下降问题,可以通过优化系统配置、增加硬件资源等方式进行改善;对于数据倾斜问题,可以通过调整数据分区策略、优化数据处理算法等方式进行缓解。
-
如果一个Hadoop集群中的数据节点突然宕机,你会如何处理
- 回答示例:首先,我会立即检查宕机数据节点的状态,确认是否是由于硬件故障或软件问题导致的。如果是硬件故障,我会尽快联系硬件供应商进行维修或更换;如果是软件问题,我会尝试重启数据节点或进行相关的故障排除操作。同时,我会关注其他数据节点的状态,确保整个集群的稳定性和可用性。
三、对大数据运维的理解类问题
-
你认为大数据运维工程师需要具备哪些技能和素质
- 回答示例:大数据运维工程师需要具备扎实的技术基础,熟悉大数据平台的架构和组件;同时,还需要具备良好的问题解决能力和团队合作精神。此外,持续学习和进步也是大数据运维工程师不可或缺的品质,因为大数据技术日新月异,需要不断跟进和学习新的技术和工具。
-
在大数据运维领域,你认为未来有哪些发展趋势和挑战
- 回答示例:未来大数据运维领域的发展趋势可能包括自动化运维、智能化运维以及云原生运维等方向。随着大数据技术的不断发展,运维工作将变得更加复杂和多样化,对运维工程师的技能和素质要求也将不断提高。同时,数据安全、性能优化以及容灾备份等方面也将面临更大的挑战。
一、基础题
1.请写出http和https请求的区别,并写出遇到过的响应状态码.
一、https协议需要到ca申请证书,一般免费证书很少,需要交费。
二、http是超文本传输协议,信息是明文传输,https 则是具有安全性的ssl加密传输协议。 三、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。
四、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。
状态码常用:
301 永久重定向
403 服务器已经理解请求,但是拒绝执行
404 页面丢失
500 服务器错误
2.请写出在linux系统上面搭建系统或者产品等大数据平台需要对系统进行哪些检查。
从稳定性说:需要检查集群中的每一台服务器的命令安装是否完善,环境变量是否配置完毕,每一台服务器的软件配置是否有问题。
扩展性: 能够快速扩展机器,横向扩展条件是否具备
3.请写出使用过的linux系统有哪些版本,如何查看系统信息?(发行版本,内核版本等信息)。
Centos 6.5 6.6 x64 1.查看发行版本命令:cat /etc/issue
2.查看内核版本: cat /proc/version
4.请使用命令在linux系统中创建用户test,用户组为test1,用户目录 /test , 并赋予sudo权限。
useradd -d /test -m test -g test1 -G root
useradd 选项 用户名 其中各选项含义如下:
-c comment 指定一段注释性描述。
-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。
-g 用户组 指定用户所属的用户组。
-G 用户组,用户组 指定用户所属的附加组。
-s Shell文件 指定用户的登录Shell。
-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
Sudo可以修改文件需要root用户
sudo的工作过程如下:
1,当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限
2,确认用户具有可执行sudo的权限后,让用户输入用户自己的密码确认
3,若密码输入成功,则开始执行sudo后续的命令
4,root执行sudo时不需要输入密码(eudoers文件中有配置root ALL=(ALL) ALL这样一条规则)
5,若欲切换的身份与执行者的身份相同,也不需要输入密码
5.写出最少3个监控系统指标的命令(如内存,CPU ,IO,磁盘等)。
看内存 :free
看cpu:more /proc/cpuinfo
看IO:iostat -x 10
看磁盘:fdisk -l
6.请用多种方式在linux系统中设置环境变量,并指出各种方式的区别。
1、控制台中设置,不赞成这种方式,因为他只对当前的shell 起作用,换一个shell设置就无效了: $PATH="$PATH":/NEW_PATH (关闭shell Path会还原为原来的path)
2、修改 /etc/profile 文件,如果你的计算机仅仅作为开发使用时推存使用这种方法,因为所有用户的shell都有权使用这个环境变量,可能会给系统带来安全性问题。这里是针对所有的用户的,所有的shell 在/etc/profile的最下面添加: export PATH="$PATH:/NEW_PATH"
3、修改bashrc文件,这种方法更为安全,它可以把使用这些环境变量的权限控制到用户级别,这里是针对某一特定的用户,如果你需要给某个用户权限使用这些环境变量,你只需要修改其个人用户主目录下的 .bashrc文件就可以了。 在下面添加: Export PATH="$PATH:/NEW_PATH"
7.请在linux系统中添加指定的定时任务。(每月1,15日,1,10点运行 /run.sh).
* 1 ,10 1,15 * * sh /run.sh
8.编写个shell脚本将/data目录下大于100k的文件转移到 /tmp 目录下。
#! /bin/sh
directory=/data/*
filesize=0
for file in $directory
do
filesize=$(wc -c < $(basename $file))
if [ $filesize -gt 100*1024 ]
then
mv $(basename $file) /tmp
fi
done
9.请使用命令写出在linux系统中对于文件01.txt ,查找行内容包含“java”关键字,但不包含“bug”关键字的内容,不区分大小写。
:set ignorecase 忽略大小写 然后执行命令 /java[^bug]
10.请帮我查询出8443端口正在被哪个进程使用?
netstat -tunlp|grep 8443
11.请在linxu系统中使用命令快速找出mysql文件的位置。
rpm -qal |grep mysql
12.搭建NFS文件共享服务,如共享目录为 /nfs , 如何配置NFS服务,客户端怎么挂载共享目录。
1. yum install nfs-utils rpcbind 安装NFS服务端
2. vi /etc/sysconfig/nfs 搜索和设置如下所示的端口配置:
RQUOTAD_PORT=30001
LOCKD_TCPPORT=30002
LOCKD_UDPPORT=30002
MOUNTD_PORT=30003
STATD_PORT=30004
3.关闭防火墙
4.vi /etc/selinux/config 将上述文件中的 SELINUX=enforcing 替换为 SELINUX=permissive 保存上述文件之后,运行以下命令: setenforce 0
5、创建共享目录 mkdir /home/nfs-share
6、vi /etc/exports 在上述文件的末尾新增一行,如下所示:
/data/nfs_share 192.168.4.212(rw,sync,no_root_squash)
/data/nfs_share *(ro) 这一行表示只有192.168.4.212客户端能够以读写权限挂载共享目录,其他客户端只能以只读权限挂载。
7.启动chkconfig nfs on
chkconfig rpcbind on
service nfs start
service rpcbind start
8. yum install -y nfs-utils
9.手动挂载NFS共享目录
Step-1:确定挂载点,运行以下命令: showmount -e 192.168.4.211
-e选项显示NFS服务端的导出列表。
Step-2:创建挂载目录,运行以下命令: mkdir -p /root/remote_dir 其中,/root/remote_dir为共享目录的挂载点目录。
Step-3:挂载共享目录,运行以下命令: mount -t nfs 192.168.4.211:/data/nfs_share /root/remote_dir 其中,-t选项用于指定文件系统的类型为nfs。
Step-4:共享目录使用结束之后,卸载共享目录,运行以下命令: umount /root/remote_dir
13.解释以下vi命令的意思,根据意思写出vi命令。
1) :s/p1/p2/g 将所有的p1替换成p2
2) 显示行号 :set nu
3) p 粘贴 对应 nyy复制使用
4) 删除光标下6行 6dd
5) 将光标移动到最后一行行首 G
6) /apple 查找apple字符串
14.是否搭建过大数据组件相关的集群,如果集群之间无法通信了,怎么排查?
搭建过,应该检查 1. jps查看进程是否停止
2. 检查ip是否ping通
15.是否安装过mysql源码版本,写出安装流程。
Mysql5.6安装
一 编译环境安装
1、安装make编译器
2、安装 bison
3、安装gcc-c ++
4、安装cmake
5、安装ncurses
6、 yum install gcc gcc-c++
yum install -y ncurses-devel
yum install -y cmake
yum install -y libaio
yum install -y bison
二 mysql安装
1、解压mysql源码压缩文件
2、编译完成配置mysql服务
3、启动mysql
4、修改root密码(默认为空)
16.有下列两表:
TAB1
C1 C2
------ - -----
A 11
B 12
C 13
TAB2
CX CY
------ ------
A 21
C 22
D 23
要得到一下结果:
C1 C2 CX CY
----- ----- ------ ------
A 11 A 21
C 13 C 22
----- ------ D 23
请写出具体的sql语句
SELECT * from tab1 RIGHT JOIN tab2 on tab1.C1 =tab2.CX
Union是连接两个查询语句 (select * from tab1 union all select * from tab2)
Union ALL 连接所有值包括重复 Union不包括重复值
二、基础题
1、请写出mysql数据库的几种备份/恢复方法。并指出其优缺点
备份
1、linux命令 mysqldump 直接生成.sql文件备份
mysqldump -u username -p dbname table1 > /home/BackupName.sql 输出mysql密码后备份
2.利用工具备份(Navicat)
3.复制整个数据库目录备份 (xcopy 命令)
4.使用mysqlhotcopy工具快速备份(热备份)
原理:先将需要备份的数据库加上一个读锁,然后用FLUSH TABLES将内存中的数据写回到硬盘上的数据库,最后,把需要备份的数据库文件复制到目标目录。
恢复:
mysql -u root -p dbname < C:\backup.sql
优缺点:
1.Mysqldump:利用linux或者shell进行备份比较灵活,运行较慢
2.利用工具:不好控制,不能自定义
3.复制整个data目录 :这种方法不适用于InnoDB存储引擎的表,而对于MyISAM存储引擎的表很方便。同时,还原时MySQL的版本最好相同。
4.mysqlhotcopy:mysqlhotcopy支持不停止MySQL服务器备份。而且,mysqlhotcopy的备份方式比mysqldump快。mysqlhotcopy是一个perl脚本,主要在Linux系统下使用。其使用LOCK TABLES、FLUSH TABLES和cp来进行快速备份。需要安装Perl和DBI支持。
2、请解释max_allowed_packet 的用途
指代mysql服务器端和客户端在一次传送数据包的过程当中数据包的大小这个是定义mysql服务器端和客户端在一次传送数据包的过程当中数据包的大小定义过大,比如max_allowed_packet=8092,有可能服务器端太忙,来不及接收,或者网络太差,会容易造成丢包定义过小,会因为客户端可能无法快速接收服务器端发过来的包,一般推荐是4096
3、写出调优过的mysql配置参数(连接数/接收的数据包大小)
MySQL配置文件my.cnf
global max_connections 设置连接数
max_allowed_packet 客户端与服务端之间一次传输数据包大小
。。。。
4、查看linux系统中启动了多少java进程,并获取其中某个java进程的内存使用情况。
Jps 查看进程pid
jmap -heap pid
5、指出Nginx支持哪几种负载均衡模式,并指出各模式的应用场景。
1.roundrobin 轮询方式,依次将请求分配到各个后台服务器中,默认的负载均衡方式。 适用于后台机器性能一致的情况。 挂掉的机器可以自动从服务列表中剔除。
2.weight 根据权重来分发请求到不同的机器中,适用于后台机器性能不一样的情况。
3.ip_hash 根据请求者ip的hash值将请求发送到后台服务器中,可以保证来自同一ip的请求被打到固定的机器上,可以解决session问题。
4.url_hash 根据请求的url的hash值将请求分到不同的机器中,当后台服务器为缓存的时候效率高。
5.fair 根据后台响应时间来分发请求,响应时间短的分发的请求多。
三、专项题
1.写出hadoop集群常用进程以及进程含义
1、Namenode
它是Hadoop 中的主服务器,管理文件系统名称空间和对集群中存储的文件的访问。
2、Datanode
它负责管理连接到节点的存储(一个集群中可以有多个节点)。每个存储数据的节点运行一个 datanode 守护进程。
3、secondaryNameNode
它不是 namenode 的冗余守护进程,而是提供周期检查点和清理任务。 出于对可扩展性和容错性等考虑,我们一般将SecondaryNameNode运行在一台非NameNode的机器上。
4、ResourceManager
负责调度 DataNode上的工作。每个 DataNode有一个NodeManager,它们执行实际工作。
5、NodeManager
负责执行ResourceManager分发的任务
HA 模式忽略
2.Hadoop安装部署需要修改的配置文件,以及常用端口,举例说明
hadoop-env.sh hadoop jdk配置
core-site.xml hadoop核心文件-配置hadoop的命名服务和tmp目录和zookeeper集群
hdfs-site.xml 配置通信端口 http端口等。
mapred-site.xml 配置mapreduce的资源调度框架 yarn
yarn-site.xml yarn相关配置
Slaves 文件 指定hadoop集群的子节点位置
端口:
50070 namenode的web访问端口
9000 RPC通信端口
2181 zookeeper端口
...
3.使用过的hadoop shell 命令
Hadoop fs -ls /
Hadoop fs -mkdir /test
Hadoop fs -cat /
.......
相关文章:
大数据运维面试题
华为大数据运维面试题可能涵盖多个方面,以下是一些可能的面试问题及解析,这些问题旨在考察应聘者的技术知识、问题解决能力和对大数据运维的理解: 一、技术知识类问题 简述大数据运维的主要职责和工作内容 回答示例:大数据运维工…...
OpenBMC:BmcWeb login认证
BmcWeb在include\login_routes.hpp中实现了/login用于完成web的登录: BMCWEB_ROUTE(app, "/login").methods(boost::beast::http::verb::post)(handleLogin);inline void handleLogin(const crow::Request& req,const std::shared_ptr<bmcweb::AsyncResp>…...
Python学习之路(五)-接口API
在 Python 中结合数据库开发接口 API 通常使用 Web 框架(如 Flask 或 Django)和 ORM(对象关系映射)工具(如 SQLAlchemy 或 Django ORM)。以下是使用 Flask 和 SQLAlchemy 的详细步骤,展示如何结合数据库开发一个简单的 API。 使用 Flask 和 SQLAlchemy 开发 API 1. 安…...
数据库+Docker+SSH三合一!深度评测HexHub的全栈开发体验
作为一名技术博主,我最近一直被各种开发工具切换搞得焦头烂额。数据库要用Navicat,服务器管理得开Termius,Docker操作还得切到命令行,每天光在不同工具间切换就浪费了大量时间。直到团队里的一位架构师向我推荐了HexHub这个一体化…...
涂料油墨制造数字化转型的关键技术与挑战
涂料油墨制造行业正处于数字化转型的关键时期,这一转型是提升生产效率、增强产品质量和降低成本的重要途径。以下是该行业在数字化转型中的关键技术与面临的挑战: 关键技术: 工业互联网技术:通过在生产设备上安装传感器…...
UE5 调整字体、界面大小
文章目录 方案一 5.4 版本及以上(推荐)方案二 5.3 版本及以下(推荐)方案三 使用插件(不推荐) 方案一 5.4 版本及以上(推荐) 进入 编辑 > 编辑器偏好设置,如下图所示&…...
【OpenCV图像处理实战】从基础操作到工业级应用
目录 前言技术背景与价值当前技术痛点解决方案概述目标读者说明 一、技术原理剖析核心概念图解核心作用讲解关键技术模块说明技术选型对比 二、实战演示环境配置要求核心代码实现(6个案例)案例1:图像基本操作案例2:边缘检测案例3&…...
生成随机验证码-解析与优化
文章目录 代码功能解析潜在问题与优化建议1. 安全性问题2. 易混淆字符过滤3. 参数校验4. 性能优化 扩展功能示例1. 自定义字符集2. 批量生成验证码 完整优化代码关键总结 代码功能解析 import random import stringdef generate_code(length6):chars string.digits string.a…...
VMware 虚拟机镜像资源网站
常见的 VMware 虚拟机镜像资源网站 网站名称链接地址特点OSBoxes.orgOSBoxes - Virtual Machines for VirtualBox & VMware 提供 .vmx .vmdk,适合 VMware 和 VirtualBox,更新频率高,界面清晰LinuxVMImages.comLinux VM Images - Downlo…...
HTML5 详细学习笔记
1. HTML5 简介 HTML5 是最新的 HTML 标准,于 2014 年 10 月由 W3C 完成标准制定。它增加了许多新特性,包括语义化标签、多媒体支持、图形效果、离线存储等。 1.1 HTML5 文档基本结构 <!DOCTYPE html> <html lang"zh-CN"> <h…...
真.从“零”搞 VSCode+STM32CubeMx+C <1>构建
目录 前言 准备工作 创建STM32CubeMx项目 VSCode导入项目&配置 构建错误调试 后记 前言 去年10月开始接触单片机,一直在用树莓派的Pico,之前一直用Micropython,玩的不亦乐乎,试错阶段优势明显,很快就能鼓捣一…...
Pikachu靶场
本质是信任了不可信的客户端输入。防御核心: 永不信任客户端提交的权限参数(如 user_id, role)。强制服务端校验用户身份与操作权限。定期审计权限模型,避免业务迭代引入新漏洞。 水平越权 1,按照网站的提示要求登录 进…...
五、web自动化测试01
目录 一、HTML基础1、HTML介绍2、常用标签3、基础案例3.1 前端代码3.2 自动化测试 二、CSS定位1、css介绍2、案例3、代码优化 三、表单自动化1、案例2、元素属性定位 四、后台基础数据自动化1、登录1.1 id与class定位1.2 定位一组元素 2、商品新增 一、HTML基础 可参考学习 链…...
利用软件I2C驱动OLED,点亮、熄灭OLED屏幕以及获取当前OLED屏幕开启状态
题目: 参考《I2C通信》的文档,自行连接电路,利用软件I2C驱动OLED,点亮、熄灭OLED屏幕以及获取当前OLED屏幕开启状态。 可以优先实现: 软件I2C初始化函数,用于初始化IO引脚 再实现: 主机发起始位和停止位,主机发送1个字节,…...
数据结构——栈与队列
1.栈 1.1概念 一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。 进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底。 栈中的数据元素遵守后进先出 LIFO ( Last In First Out )的原则。 压栈:栈…...
【嵌入式系统设计师(软考中级)】第二章:嵌入式系统硬件基础知识(3)
文章目录 4. 嵌入式系统I/O接口4.1 GPIO与PWM接口4.1.1 GPIO接口(General-Purpose Input/Output)4.1.2 PWM接口(Pulse Width Modulation) 4.2 A/D与D/A接口的基本原理与结构4.2.1 DA转换(数模转换,Digital-…...
【网络安全】社会工程学策略
1. 社会工程学简介 社会工程攻击是威胁行为者常用的攻击方式。这是因为,诱骗人们提供访问权限、信息或金钱通常比利用软件或网络漏洞更容易。 您可能还记得,社会工程学是一种利用人为错误来获取私人信息、访问权限或贵重物品的操纵技术。它是一个涵盖性…...
ROS2---时间戳对齐
一、ROS2时间系统架构 时间模型 仿真时间(Simulation Time):由/clock话题驱动,适用于离线仿真与调试。真实时间(Real Time):基于系统硬件时钟,支持PTP协议(IEEE 1588&…...
C语言教程(十五):C 语言函数指针与回调函数详解
一、函数指针 1.1 函数指针的概念 在 C 语言中,函数指针是指向函数的指针变量。每个函数在内存中都有一个起始地址,函数指针就存储了这个起始地址,通过函数指针可以调用相应的函数。 1.2 函数指针的定义 函数指针的定义语法如下:返…...
VSCode如何修改默认扩展路径和用户文件夹目录到其他盘以及微信开发工具如何修改扩展路径到其他盘
ps:因公司电脑c盘内存严重不足,而出本篇文章 1.Visual Studio Code 随着VsCode的使用时间的推移,安装的扩展以及数据逐步增多,导致c盘内存占用较大,所以这里将vscode的默认缓存路径等迁移到其他盘。 步骤如下 1.找到默认的存储…...
抽象类相关
抽象类的定义 抽象类 是一种特殊的类,它不能被实例化,只能作为基类来派生出具体类。抽象类至少包含一个纯虚函数 。纯虚函数是在函数原型前加上 0 的虚函数,表示该函数没有具体实现,必须由派生类来实现。 抽象类的作用 提供统…...
如何测试短信接口
目录 一、测试短信接口的基本流程 1. 了解短信接口文档 2. 使用工具测试短信接口 示例一:用 curl 测试 POST 请求 示例二:用 Postman 设置 POST 请求 3. 编写测试脚本(Python 示例) 二、测试类型和场景 ✅ 正常发送测试 …...
pycharm2024.3.2项目解释器选择问题
问题描述:已经选择了pyau虚拟环境的解释器,运行了conda activate pyau,但是为什么关闭pycharm2024.3.2软件重新启动后,打开终端是(base) PS D:\deepseektest> ,为什么不是(pyau) PS D:\deepseektest> 解决问题&a…...
如何在 Dialog 中安全初始化 ECharts 并自动监听容器大小变化
如何在 Dialog 中安全初始化 ECharts 并自动监听容器大小变化 在使用 ECharts 的 Vue 项目中,我们常常会将图表放入弹窗(如 Element UI 的 <el-dialog>)中进行展示。但你是否遇到过以下问题: 图表初次显示尺寸异常&#x…...
如何借助ETL数据集成工具实现数据一致性?
主要可以从以下几个方面入手: 一、数据抽取阶段(Extract) 统一数据源连接方式:ETL工具通常支持多种数据源连接方式,如关系型数据库、非关系型数据库、文件系统、API接口等。在抽取数据时,要确保对各个数据…...
3.4/Q1,GBD数据库最新文章解读
文章题目:Burden of Carbon Monoxide Poisoning in Asian Countries From 1990 to 2021 and Its Projection Until 2030: An Analysis of the Global Burden of Disease Study 2021 DOI:10.2147/CLEP.S512786 中文标题:1990 年至 2021 年亚洲…...
【高中数学/古典概率】4红2黑六选二,求取出两次都是红球的概率
【问题】 袋子里装4只红球,2只黑球,大小完全相同,抽两次球,每次抽一只,抽出后不再放回,求取出的两次都是红球的概率。 【来源】 数林外传系列之《概率与期望》P20 单埻著 中国科学技术大学出版社 【数学…...
机器人操作中的生成式 AI:综述(上)
25年3月来自香港大学、香港理工、香港科大、浙大和清华大学的论文“Generative Artificial Intelligence in Robotic Manipulation: A Survey”。 本综述全面回顾机器人操作领域生成学习模型的最新进展,并探讨该领域的关键挑战。机器人操作面临着关键瓶颈ÿ…...
Spring AI 核心概念
本文是对Spring AI中涉及到的AI相关核心概念的介绍,笔者结合LangChain、LlamaIndex的使用经验,尝试尽可能清晰的把这些概念解释清楚. 读者也可以参考官方文档作为补充. 模型 提到AI模型,我们的第一印象一定是GPT,DeepSeek这样的大语言模型(…...
第53.5讲 | 小项目实战:用 SHAP 值解释农作物产量预测模型 [特殊字符][特殊字符]
目录 ✅ 项目背景 📦 所用工具 📁 数据字段(模拟) 🧑💻 代码实现步骤 🎯 解读与启发 🧠 项目拓展建议 ✅ 项目背景 我们使用一个简化的玉米产量数据集(可模拟实…...
Linux编译器-gcc/g++使用
1.预处理(进行宏替换) -E开始进行程序编译,在预处理做完的时候,停下来 2.编译(生成汇编) -S 开始编译,编译做完了就停下来 3.汇编(生成机器可识别代码) -c 开始翻译汇编…...
SEO的关键词研究与优化 第二章
回顾上一篇文章, 3. 关键词评估和选择 关键词评估和选择是SEO策略中至关重要的一步。这个过程不仅仅是选择搜索量最高的词,而是要在多个因素之间找到平衡,以确定最有价值的关键词。 3.1 搜索量分析 搜索量是评估关键词潜力的首要指标,但它不应…...
数据结构数组
数组特点 内存是连续的,所以地址可以偏移,支持下标访问。 优点 下标访问(随机访问)的时间复杂度是O(1),末尾增加和删除元素的时间复杂度是O(1)。 访问元素前后相邻位置方便,因为数组每个位置内存是连续的ÿ…...
vscode插件系列-2、认识vscode
这一章,我将带你重新认识vscode 一、工作区划分 1、活动条(Activity Bar) 活动条是一个核心的导航,扩展可以通过在View Containers中配置,从而渲染Views中的视图。 具体来说就是在package.json中配置如下&…...
Java学习手册:TCP 协议基础
一、TCP 协议概述 TCP(Transmission Control Protocol,传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,它在 IP 协议的基础上提供了可靠的 数据传输服务。TCP 通过三次握手建立连接,通过四次挥手…...
摘要 | 李录在北大光华管理学院的演讲《价值投资》
李录在北大光华管理学院的演讲《价值投资》是中文投资领域极具影响力的经典内容,尤其是2019年11月的演讲版本。该演讲视频时长90分钟,主要内容围绕价值投资的理论框架、实践难点以及在中国市场的应用展开。以下是该演讲的核心要点解析: 一、价…...
让Docker端口映射受Firewall管理而非iptables
要让Docker容器的端口映射受系统防火墙(如firewalld或ufw)管理,而不是直接通过iptables,可以按照以下步骤配置: 方法一:禁用Docker的iptables规则 (1)编辑Docker配置文件: vi /etc/docker/da…...
数据库数据删除与修改实验
数据库数据删除与修改实验 在数据库原理的学习中,数据的删除与修改是核心操作技能。通过“删除修改数据”实验,我系统实践了 SQL 中 UPDATE 和 DELETE 语句的多种应用场景,从基础语法到复杂业务逻辑处理,积累了丰富的实战经验。本…...
多回路电表如何革新电力监控?安科瑞技术深度解析
安科瑞顾强 安科瑞电气股份有限公司作为国内领先的能源管理方案提供商,其多回路智能电表系列(如AMC200、AMC300L、ADW200-D10-4S等)凭借多回路计量、高精度测量、无线物联等核心优势,在工业、商业及智能电网领域广泛应用。以下从…...
【云计算】云计算中IaaS、PaaS、SaaS介绍
0 随着云计算、大数据、人工智能发展迅速,布局“云”已经是互联网企业共识。云计算的服务类型分为三种,分别为IaaS、PaaS、SaaS,这三个分别是什么意思,今天做一个简单的介绍和了解。 一、云计算 云计算是用户需求通过Internet获…...
Ubuntu中选择Python虚拟环境
背景 在Ubuntu系统中,如果希望通过一个简单的命令(例如activate)快速查找并激活Python虚拟环境,是可以通过Bash脚本实现的。该脚本的核心功能包括:递归扫描用户家目录(~)中所有非隐藏文件夹&am…...
Nginx 安装与配置全流程指南(2025 最新版)
一、环境准备与依赖安装 1.1 系统要求 操作系统:支持主流 Linux 发行版(Ubuntu 20.04/CentOS 7/Debian 10)硬件配置:内存 ≥512MB,磁盘 ≥10GB 可用空间(建议使用 SSD)网络要求:开…...
WAMP设置外网访问
系统:windows 软件:wampserver 设置允许外网访问 1.修改apache的httpd-vhosts.config # Virtual Hosts # <VirtualHost _default_:80>ServerName localhostServerAlias localhostDocumentRoot "${INSTALL_DIR}/www"<Directory "…...
NXP----SVR5510芯片layout设计总结
1,Pinout Information: VR5510是S32G应用处理器的拟议电源管理集成电路(PMIC)。它是一款汽车多输出PMIC,主要用于网关、ADAS、V2X和信息娱乐应用。下面的方框图展示了其主要特点。 2,封装设计&…...
面试之消息队列
消息队列场景 什么是消息队列? 消息队列是一个使用队列来通信的组件,它的本质就是个转发器,包含发消息、存消息、消费消息。 消息队列怎么选型? 特性ActiveMQRabbitMQRocketMQKafka单机吞吐量万级万级10万级10万级时效性毫秒级…...
[创业之路-386]:企业法务 - 知识产权的刑事风险
知识产权的刑事风险是指因侵犯他人知识产权而可能面临的刑事法律责任。 对于初创公司而言,了解并防范此类风险至关重要,以下从不同知识产权类型展开详细分析: 一、侵犯商标权的刑事风险 风险表现:未经注册商标所有人许可&#…...
Freertos----中断管理
一、中断概念 在RTOS中,需要应对各类事件。这些事件很多时候是通过硬件中断产生,怎么处理中断呢? 假设当前系统正在运行Task1时,用户按下了按键,触发了按键中断。这个中断的处理流程如下: CPU跳到固定地…...
4.4 记忆机制与上下文管理:短期与长期记忆的设计与应用
记忆机制与上下文管理已成为智能代理(Agent)系统实现高效、智能化行为的核心技术。记忆机制通过短期记忆(Short-Term Memory, STM)和长期记忆(Long-Term Memory, LTM)支持Agent存储、检索和利用信息&#x…...
ERROR: x264 not found using pkg-config
x264 编译加上了参数,–prefix/usr/local/x264/,找不到x264.pc ffmpeg安装过程中configure报错: sudo ./configure --enable-gpl --enable-libx264 --enable-shared --extra-ldflags-L/usr/lib --extra-cflags-I/usr/include --pkg-config“…...
SpringBoot 封装统一API返回格式对象 标准化开发 请求封装 统一格式处理
统一HTTP请求代码 public class HttpCode {/*** 操作成功*/public static final int SUCCESS 200;/*** 对象创建成功*/public static final int CREATED 201;/*** 请求已经被接受*/public static final int ACCEPTED 202;/*** 操作已经执行成功,但是没有返回数据…...