elasticsearch-6.8.23的集群搭建过程
三个节点的 ElasticSearch 集群搭建步骤
准备三台机器:28.104.87.98、28.104.87.100、28.104.87.101 和 ElasticSearch 的安装包 elasticsearch-6.8.23.tar.gz
----------------------------- 28.104.87.98,使用 root 用户操作 ---------------------------
上传 elasticsearch-6.8.23.tar.gz 到 28.104.87.98,比如上传到 /opt/es 目录下
进入到 /opt/es 目录,执行 tar -zxvf elasticsearch-6.8.23.tar.gz 命令,解压安装包到本目录
进入到 ElasticSearch 的配置目录 cd /opt/es/elasticsearch-6.8.23/config
执行 cp elasticsearch-6.8.23.yml elasticsearch-6.8.23.yml.backup 命令,对配置文件进行备份。(此步骤可选)
执行 vi elasticsearch-6.8.23.yml 命令,编辑配置文件
cluster.name: elasticsearch # 集群的名字
node.master: true # 是不是有作为 Master 节点的资格
node.name: node-1 # 节点的名字,集群内要唯一不可重复
node.data: true # 是否存储数据
path.data: /opt/es/data # 存储数据的路径,这个要自己创建
path.logs: /opt/es/logs # 存储日志的路径,这个要自己创建
network.host: 28.104.87.98 # 设置节点的 ip
http.port: 9200 #设置端口号
discovery.zen.ping.unicast.hosts:["28.104.87.98","28.104.87.100","28.104.87.101"] # 集群里所有节点的 ip
discovery.zen.minimum_master_nodes: 2 # 选举 Master 节点时需要参与的最少的候选主节点,计算方式:节点数/2+1
discovery.zen.ping_timeout: 10s # 超时时间
path.repo: ["/mnt/databackup/ElasticSearchBackupSet"] # 使用 NFS 共享的方式进行 Elasticsearch 备份的目录,这个要自己创建。(此配置项可选)
创建三个目录 /opt/es/data、/opt/es/logs、/mnt/databackup/ElasticSearchBackupSet(此目录可选)
创建启动当前节点的 ElasticSearch 用户和设置密码
useradd esUser
passwd esUser
把 /opt/es、/mnt 目录及其子目录授权给 esUser
chown -R esUser:esUser /opt/es
chown -R esUser:esUser /mnt
给 /mnt 目录及其子目录授权 750 权限
chmod -R 750 /mnt
切换用户 esUser
su - esUser
----------------------------- 28.104.87.98,使用 esUser 用户操作 ------------------------------------------------------
进入到 /opt/es/elasticsearch-6.8.23/bin 目录下
cd /opt/es/elasticsearch-6.8.23/bin
启动 ElasticSearch 服务,下面的命令二选一,./elasticesearch 命令能看到启动日志,但是会占用一个窗口。
./elasticesearch
./elasticesearch -d
----------------------------- 28.104.87.100,使用 root 用户操作 ------------------------------------------------------
上传 elasticsearch-6.8.23.tar.gz 到 28.104.87.100,比如上传到 /opt/es 目录下
进入到 /opt/es 目录,执行 tar -zxvf elasticsearch-6.8.23.tar.gz 命令,解压安装包到本目录
进入到 ElasticSearch 的配置目录 cd /opt/es/elasticsearch-6.8.23/config
执行 cp elasticsearch-6.8.23.yml elasticsearch-6.8.23.yml.backup 命令,对配置文件进行备份(此步骤可选)
执行 vi elasticsearch-6.8.23.yml 命令,编辑配置文件
cluster.name: elasticsearch # 集群的名字
node.master: true # 是不是有作为 Master 节点的资格
node.name: node-2 # 节点的名字,集群内要唯一不可重复
node.data: true # 是否存储数据
path.data: /opt/es/data # 存储数据的路径,这个要自己创建
path.logs: /opt/es/logs # 存储日志的路径,这个要自己创建
network.host: 28.104.87.100 # 设置节点的 ip
http.port: 9200 #设置端口号
discovery.zen.ping.unicast.hosts:["28.104.87.98","28.104.87.100","28.104.87.101"] # 集群里所有节点的 ip
discovery.zen.minimum_master_nodes: 2 # 选举 Master 节点时需要参与的最少的候选主节点,计算方式:节点数/2+1
discovery.zen.ping_timeout: 10s # 超时时间
path.repo: ["/mnt/databackup/ElasticSearchBackupSet"] # 使用 NFS 共享的方式进行 Elasticsearch 备份的目录,这个要自己创建。(此配置项可选)
创建三个目录 /opt/es/data、/opt/es/logs、/mnt/databackup/ElasticSearchBackupSet(此目录可选)
创建启动当前节点的 ElasticSearch 用户和设置密码
useradd esUser
passwd esUser
把 /opt/es、/mnt 目录及其子目录授权给 esUser
chown -R esUser:esUser /opt/es
chown -R esUser:esUser /mnt
给 /mnt 目录及其子目录授权 750 权限
chmod -R 750 /mnt
切换用户 esUser
su - esUser
----------------------------- 28.104.87.100,使用 esUser 用户操作 ------------------------------------------------------
进入到 /opt/es/elasticsearch-6.8.23/bin 目录下
cd /opt/es/elasticsearch-6.8.23/bin
启动 ElasticSearch 服务,下面的命令二选一,./elasticesearch 命令能看到启动日志,但是会占用一个窗口。
./elasticesearch
./elasticesearch -d
----------------------------- 28.104.87.101,使用 root 用户操作 ------------------------------------------------------
上传 elasticsearch-6.8.23.tar.gz 到 28.104.87.101,比如上传到 /opt/es 目录下
进入到 /opt/es 目录,执行 tar -zxvf elasticsearch-6.8.23.tar.gz 命令,解压安装包到本目录
进入到 ElasticSearch 的配置目录 cd /opt/es/elasticsearch-6.8.23/config
执行 cp elasticsearch-6.8.23.yml elasticsearch-6.8.23.yml.backup 命令,对配置文件进行备份(此步骤可选)
执行 vi elasticsearch-6.8.23.yml 命令,编辑配置文件
cluster.name: elasticsearch # 集群的名字
node.master: true # 是不是有作为 Master 节点的资格
node.name: node-3 # 节点的名字,集群内要唯一不可重复
node.data: true # 是否存储数据
path.data: /opt/es/data # 存储数据的路径,这个要自己创建
path.logs: /opt/es/logs # 存储日志的路径,这个要自己创建
network.host: 28.104.87.101 # 设置节点的 ip
http.port: 9200 #设置端口号
discovery.zen.ping.unicast.hosts:["28.104.87.98","28.104.87.100","28.104.87.101"] # 集群里所有节点的 ip
discovery.zen.minimum_master_nodes: 2 # 选举 Master 节点时需要参与的最少的候选主节点,计算方式:节点数/2+1
discovery.zen.ping_timeout: 10s # 超时时间
path.repo: ["/mnt/databackup/ElasticSearchBackupSet"] # 使用 NFS 共享的方式进行 Elasticsearch 备份的目录,这个要自己创建。(此配置项可选)
创建三个目录 /opt/es/data、/opt/es/logs、/mnt/databackup/ElasticSearchBackupSet(此目录可选)
创建启动当前节点的 ElasticSearch 用户和设置密码
useradd esUser
passwd esUser
把 /opt/es、/mnt 目录及其子目录授权给 esUser
chown -R esUser:esUser /opt/es
chown -R esUser:esUser /mnt
给 /mnt 目录及其子目录授权 750 权限
chmod -R 750 /mnt
切换用户 esUser
su - esUser
----------------------------- 28.104.87.101,使用 esUser 用户操作 ------------------------------------------------------
进入到 /opt/es/elasticsearch-6.8.23/bin 目录下
cd /opt/es/elasticsearch-6.8.23/bin
启动 ElasticSearch 服务,下面的命令二选一,./elasticesearch 命令能看到启动日志,但是会占用一个窗口。
./elasticesearch
./elasticesearch -d
三台机器上的 ElasticSearch 成功启动以后,在浏览器输入以下地址查看集群健康状态、集群里的所有节点、集群里的所有索引
http://28.104.87.101:9200/_cluster/health?pretty
http://28.104.87.101:9200/_cat/nodes?pretty
http://28.104.87.101:9200/_cat/indices?pretty
--------------------------- 使用 NFS 共享的方式进行 Elasticsearch 备份过程中可能遇到的问题 ------------------------
java -version 命令查看三台机器的 jdk 版本,如果不是 OpenJDK 需要在 java.security 文件里面取消 crypto.policy=unlimited 的注释
cat /etc/passwd | grep esUser 命令查看三台机器 esUser 的 uid 和 gid 是否一致,不一致需要修改为一致
---------------------------------------------- 设置集群的账户和密码(可选) -------------------------------------------------------
如果集群搭建成功了,就可以开始设置账户和密码。注意:设置了账户和密码以后,节点内部的通信需要各个节点配置相同的证书。
1、集群启动以后,新开启一个 Linux 登录窗口,选择 28.104.87.98、28.104.87.100、28.104.87.101 中的任何一个都可以,以 28.104.87.98 为例
2、进入到 ElasticSearch 的配置目录 cd /opt/es/elasticsearch-6.8.23/config
3、执行 vi elasticsearch-6.8.23.yml 命令,编辑配置文件,添加下面内容
http.cors.enabled: true # 是否支持跨域
http.cors.allow-origin: "*" # 当设置允许跨域,默认为 *,表示支持所有域名,如果我们只是允许某些网站能访问,那么可以使用正则表达式。比如只允许本地地址。 /https?:\/\/localhost(:[0-9]+)?/
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type # 跨域允许设置的头信息,默认为 X-Requested-With,Content-Type,Content-Length
http.cors.allow-methods: OPTIONS,HEAD,GET,POST,PUT,DELETE # 允许跨域的请求方式,默认OPTIONS,HEAD,GET,POST,PUT,DELETE
http.cors.allow-credentials: true # 是否返回设置的跨域 Access-Control-Allow-Credentials 头,如果设置为 true,那么会返回给客户端xpack.security.enabled: true # # 设置启用了 xpack 安全特性。请注意,启用安全特性后,还需要设置用户名和密码
xpack.security.transport.ssl.enabled: true # 设置启用了节点间通信的SSL/TLS 来加密 Elasticsearch 节点之间的通信。
xpack.license.self_generated.type: basic # 设置指定了使用基本类型的自生成许可证
xpack.security.transport.ssl.verification_mode: certificate # 设置定义了 SSL/TLS 通信时的证书验证模式
xpack.security.transport.ssl.keystore.path: /opt/es/elasticsearch-6.8.23/config/elastic-certificates.p12 # 设置指定了包含 SSL 密钥和证书的 PKCS#12 文件(.p12)的路径
xpack.security.transport.ssl.truststore.path: /opt/es/elasticsearch-6.8.23/config/elastic-certificates.p12 # 设置指定了包含受信任证书集合的 PKCS#12 文件(.p12)的路径
4、配置 x-pack 生成 p12 格式证书(用来加密 Elasticsearch 节点之间的通信)
cd /opt/es/elasticsearch-6.8.23/bin 进入到 bin 目录下,执行下面的命令,把生成的证书放到 /opt/es/elasticsearch-6.8.23/config 目录下
./elasticsearch-certutil cert -out …/config/elastic-certificates.p12 -pass “”
5、修改证书的权限
cd /opt/es/elasticsearch-6.8.23/config
chmod 640 elastic-certificates.p12
6、把生成的证书复制到其他节点的 /opt/es/elasticsearch-6.8.23/config 目录下。可以通过命令完成;也可以先下载下来,再上传的方式完成
7、集群剩余的节点复制证书到 /opt/es/elasticsearch-6.8.23/config 目录下后,需要在 elasticsearch-6.8.23.yml 文件中添加配置。
http.cors.enabled: true # 是否支持跨域
http.cors.allow-origin: "*" # 当设置允许跨域,默认为 *,表示支持所有域名,如果我们只是允许某些网站能访问,那么可以使用正则表达式。比如只允许本地地址。 /https?:\/\/localhost(:[0-9]+)?/
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type # 跨域允许设置的头信息,默认为 X-Requested-With,Content-Type,Content-Length
http.cors.allow-methods: OPTIONS,HEAD,GET,POST,PUT,DELETE # 允许跨域的请求方式,默认OPTIONS,HEAD,GET,POST,PUT,DELETE
http.cors.allow-credentials: true # 是否返回设置的跨域 Access-Control-Allow-Credentials 头,如果设置为 true,那么会返回给客户端xpack.security.enabled: true # # 设置启用了 xpack 安全特性。请注意,启用安全特性后,还需要设置用户名和密码
xpack.security.transport.ssl.enabled: true # 设置启用了节点间通信的SSL/TLS 来加密 Elasticsearch 节点之间的通信。
xpack.license.self_generated.type: basic # 设置指定了使用基本类型的自生成许可证
xpack.security.transport.ssl.verification_mode: certificate # 设置定义了 SSL/TLS 通信时的证书验证模式
xpack.security.transport.ssl.keystore.path: /opt/es/elasticsearch-6.8.23/config/elastic-certificates.p12 # 设置指定了包含 SSL 密钥和证书的 PKCS#12 文件(.p12)的路径
xpack.security.transport.ssl.truststore.path: /opt/es/elasticsearch-6.8.23/config/elastic-certificates.p12 # 设置指定了包含受信任证书集合的 PKCS#12 文件(.p12)的路径
8、停止集群的服务,重新启动集群
9、集群启动以后,新开启一个 Linux 登录窗口,选择 28.104.87.98、28.104.87.100、28.104.87.101 中的任何一个都可以,以 28.104.87.98 为例
10、进入到 ElasticSearch 的 bin 目录 cd /opt/es/elasticsearch-6.8.23/bin 目录,执行下面的命令。按照提示,设置账号 elastic、apm_system、kibana、logstash_system、beats_system、remote_monitoring_user 的账号和密码
./elasticsearch-setup-passwords interactive
11、三台机器上的 ElasticSearch 成功启动以后,在浏览器输入以下地址查看集群健康状态、集群里的所有节点、集群里的所有索引,此时会要求输入账号和密码
http://28.104.87.101:9200/_cluster/health?pretty
http://28.104.87.101:9200/_cat/nodes?pretty
http://28.104.87.101:9200/_cat/indices?pretty
---------------------------------------------- 使用 NFS 共享的方式进行 Elasticsearch 备份过程中可能遇到的问题 -------------------------------------------------------
java -version 命令查看三台机器的 jdk 版本,如果不是 OpenJDK 需要在 java.security 文件里面取消 crypto.policy=unlimited 的注释
cat /etc/passwd | grep esUser 命令查看三台机器 esUser 的 uid 和 gid 是否一致,不一致需要修改为一致
相关文章:
elasticsearch-6.8.23的集群搭建过程
三个节点的 ElasticSearch 集群搭建步骤 准备三台机器:28.104.87.98、28.104.87.100、28.104.87.101 和 ElasticSearch 的安装包 elasticsearch-6.8.23.tar.gz ----------------------------- 28.104.87.98,使用 root 用户操作 ----------------------…...
javascript输出语法
javascript输出有三种方式 一种是弹窗输出,就是网页弹出一个对话框,弹出输出内容 语法是aler(内容) 示例代码如下 <body> <script> alert(你好); </script> </body> 这段代码运行后网页会出现一个对话框,弹出你…...
仓库管理系统26--权限设置
原创不易,打字不易,截图不易,多多点赞,送人玫瑰,留有余香,财务自由明日实现 1、权限概述 在应用软件中,通常将软件的功能分为若干个子程序,通过主程序调用。那么,通过…...
d3dx9_43.dll丢失怎么解决?d3dx9_43.dll怎么安装详细教程
在使用计算机中,如果遇到d3dx9_43.dll丢失或许找不到d3dx9_43.dll无法运行打开软件怎么办?这个是非常常见问题,下面我详细介绍一下d3dx9_43.dll是什么文件与d3dx9_43.dll的各种问题以及d3dx9_43.dll丢失的多个解决方法! 一、d3dx9…...
[C++] 退出清理函数解读(exit、_exit、abort、atexit)
说明:在C中,exit、_exit(或_Exit)、abort和atexit是用于控制程序退出和清理的标准库函数。下面是对这些函数的详细解读: exit 函数原型:void exit(int status);作用:exit函数用于正常退出程序…...
代码随想录(回溯)
组合(Leetcode77) 思路 用递归每次遍历从1-n得数,然后list来记录是不是组合到k个了,然后这个每次for循环的开始不能和上一个值的开始重复,所以设置个遍历开始索引startindex class Solution {static List<List<…...
编译原理1
NFA&DFA 在正规式的等价证明可以借助正规集,也可以通过有限自动机DFA来证明等价,以下例题是针对DFA证明正规式的等价,主要步骤是①NFA;②状态转换表; ③状态转换矩阵; ④化简DFA; 文法和语…...
【信息系统项目管理师知识点速记】组织通用管理:流程管理
23.2 流程管理 通过流程视角能够真正看清楚组织系统的本质与内在联系,理顺流程能够理顺整个组织系统。流程是组织运行体系的框架基础,流程框架的质量影响和决定了整个组织运行体系的质量。把流程作为组织运行体系的主线,配备满足流程运作需要的资源,并构建与流程框架相匹配…...
前端 JS 经典:箭头函数的意义
箭头函数是为了消除函数的二义性。 1. 二义性 函数的二义性指函数有不同的两种用法,就造成了二义性,函数的两种用法:1. 指令序列。2. 构造器 1.1 指令序列 就是调用函数,相当于将函数内部的代码再从头执行一次。 1.2 构造器 …...
Java List操作详解及常用方法
Java List操作详解及常用方法 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿! 什么是Java List? Java中的List是一种动态数组,它允许存…...
《mysql篇》--查询(进阶)
目录 将查询结果作为插入数据 聚合查询 聚合函数 count sum group by子句 having 联合查询 笛卡尔积 多表查询 join..on实现多表查询 内连接 外连接 自连接 子查询 合并查询 将查询结果作为插入数据 Insert into 表2 select * from 表1//将表1的查询数据插入…...
数据库-MySQL 实战项目——书店图书进销存管理系统数据库设计与实现(附源码)
一、前言 该项目非常适合MySQL入门学习的小伙伴,博主提供了源码、数据和一些查询语句,供大家学习和参考,代码和表设计有什么不恰当还请各位大佬多多指点。 所需环境 MySQL可视化工具:navicat; 数据库:MySq…...
eNSP中WLAN的配置和使用
一、基础配置 1.拓扑图 2.VLAN和IP配置 a.R1 <Huawei>system-view [Huawei]sysname R1 GigabitEthernet 0/0/0 [R1-GigabitEthernet0/0/0]ip address 200.200.200.200 24 b.S1 <Huawei>system-view [Huawei]sysname S1 [S1]vlan 100 [S1-vlan100]vlan 1…...
<sa8650>QCX ID16_UsecaseRawLiteAuto 使用详解
<sa8650>QCX ID16_UsecaseRawLiteAuto 使用详解 一、前言二、ID16_UsecaseRawLiteAuto拓扑图三、UsecaseRawLiteAuto拓扑图 解析3.1 camxUsecaseRawLiteAuto.xml3.2 camxRawLiteAuto.xml四、测试一、前言 我们在使用QCX时,如果由于使用的摄像头自带了ISP,那么可能不需要使…...
为什么3d重制变换模型会变形?---模大狮模型网
在当今数字技术飞速发展的时代,3D建模和动画制作已经成为影视、游戏和虚拟现实中不可或缺的一部分。然而,即使在高级的3D软件中,重制(rigging)和变换(transformation)过程中仍然会面临一个普遍的问题——模型变形。这种变形可能导致动画效果不…...
ElasticSearch中的BM25算法实现原理及应用分析
文章目录 一、引言二、BM25算法实现原理BM25算法的实现原理1. 词频(TF):2. 逆文档频率(IDF):3. 长度归一化:4. BM25评分公式: BM25算法示例 三、BM25算法在ElasticSearch中的应用分析…...
web权限到系统权限 内网学习第一天 权限提升 使用手工还是cs???msf可以不??
现在开始学习内网的相关的知识了,我们在拿下web权限过后,我们要看自己拿下的是什么权限,可能是普通的用户权限,这个连添加用户都不可以,这个时候我们就要进行权限提升操作了。 权限提升这点与我们后门进行内网渗透是乘…...
ros1仿真导航机器人 hector_mapping gmapping
仅为学习记录和一些自己的思考,不具有参考意义。 1 hector_mapping 建图过程 (1)gazebo仿真 roslaunch why_simulation why_slam.launch <launch><!-- We resume the logic in empty_world.launch, changing only the name of t…...
嵌入式实验---实验五 串口数据接收实验
一、实验目的 1、掌握STM32F103串口数据接收程序设计流程; 2、熟悉STM32固件库的基本使用。 二、实验原理 1、STM32F103R6能通过查询中断方式接收数据,每接收到一个字节,立即向对方发送一个相同内容的字节,并把该字节的十六进…...
ubuntu 22.04下编译安装glog共享库
笔者是完美主义者,在编译opencv4.9时,有个有关glog的warn,就下载编译google的glog库并把它编译成shared libaray。重新编译opencv4.9时,该warn解除。现把编译安装glog过程记录,以备后查。 以下操作全程以root身份或sudo执行。 cd…...
JavaSec-RCE
简介 RCE(Remote Code Execution),可以分为:命令注入(Command Injection)、代码注入(Code Injection) 代码注入 1.漏洞场景:Groovy代码注入 Groovy是一种基于JVM的动态语言,语法简洁,支持闭包、动态类型和Java互操作性,…...
日语AI面试高效通关秘籍:专业解读与青柚面试智能助攻
在如今就业市场竞争日益激烈的背景下,越来越多的求职者将目光投向了日本及中日双语岗位。但是,一场日语面试往往让许多人感到步履维艰。你是否也曾因为面试官抛出的“刁钻问题”而心生畏惧?面对生疏的日语交流环境,即便提前恶补了…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
React19源码系列之 事件插件系统
事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...
06 Deep learning神经网络编程基础 激活函数 --吴恩达
深度学习激活函数详解 一、核心作用 引入非线性:使神经网络可学习复杂模式控制输出范围:如Sigmoid将输出限制在(0,1)梯度传递:影响反向传播的稳定性二、常见类型及数学表达 Sigmoid σ ( x ) = 1 1 +...
Caliper 配置文件解析:config.yaml
Caliper 是一个区块链性能基准测试工具,用于评估不同区块链平台的性能。下面我将详细解释你提供的 fisco-bcos.json 文件结构,并说明它与 config.yaml 文件的关系。 fisco-bcos.json 文件解析 这个文件是针对 FISCO-BCOS 区块链网络的 Caliper 配置文件,主要包含以下几个部…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
GC1808高性能24位立体声音频ADC芯片解析
1. 芯片概述 GC1808是一款24位立体声音频模数转换器(ADC),支持8kHz~96kHz采样率,集成Δ-Σ调制器、数字抗混叠滤波器和高通滤波器,适用于高保真音频采集场景。 2. 核心特性 高精度:24位分辨率,…...
C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析
Java求职者面试指南:Spring、Spring Boot、MyBatis框架与计算机基础问题解析 一、第一轮提问(基础概念问题) 1. 请解释Spring框架的核心容器是什么?它在Spring中起到什么作用? Spring框架的核心容器是IoC容器&#…...
