微服务框架 SpringCloud微服务架构 29 ES 集群 29.3 集群职责及脑裂

news2025/1/10 17:04:36

微服务框架

【SpringCloud+RabbitMQ+Docker+Redis+搜索+分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】

SpringCloud微服务架构

文章目录

      • 微服务框架
      • SpringCloud微服务架构
      • 29 ES 集群
        • 29.3 集群职责及脑裂
          • 29.3.1 ES 集群的节点角色
          • 29.3.2 ES集群的分布式查询
          • 29.3.3 ES 集群的脑裂
          • 29.3.4 总结

29 ES 集群

29.3 集群职责及脑裂

29.3.1 ES 集群的节点角色

elasticsearch中集群节点有不同的职责划分:

节点类型配置参数默认值节点职责
master eligiblenode.mastertrue备选主节点:主节点可以管理和记录集群状态、决定分片在哪个节点、处理创建和删除索引库的请求
datanode.datatrue数据节点:存储数据、搜索、聚合、CRUD
ingestnode.ingesttrue数据存储之前的预处理
coordinating上面3个参数都为false则为coordinating节点路由请求到其它节点 合并其它节点处理的结果,返回给用户

在这里插入图片描述

默认情况下ES 的集群节点,拥有这全部的角色,“身兼数职”

但是在实际开发中,肯定不能让一个节点身兼数职

【原因】

  • 不同的职责对硬件的需求不一样
  • 职责之间可能会产生相互影响

一个典型的ES 集群,肯定会把每个节点的职责做拆分,不同的节点做不同的事

【如何控制?】

29.3.2 ES集群的分布式查询

elasticsearch中的每个节点角色都有自己不同的职责,因此建议集群部署时,每个节点都有独立的角色。

在这里插入图片描述

这就是一个典型的ES 集群的结构

29.3.3 ES 集群的脑裂

默认情况下,每个节点都是master eligible节点,因此一旦master节点宕机,其它候选节点会选举一个成为主节点。当主节点与其他节点网络故障时,可能发生脑裂问题。

【举个栗子】

现在有三个节点

在这里插入图片描述

节点1 当选了主节点,剩下两个候选节点

假设现在发生了网络故障

在这里插入图片描述

现在node2 和 node3 无法与node1 取得连接了【现在就相当于集群分开了】

在这里插入图片描述

然后它俩可能就会以为“老大”挂了,就又选了一个主节点【现在的情况,集群中出现了两个主节点】

【进行一些数据交换后】

一旦网络恢复

在这里插入图片描述

就会出现不一致的情况,这样就出事儿了

为了避免脑裂,需要要求选票超过 ( eligible节点数量 + 1 )/ 2 才能当选为主,因此eligible节点数量最好是奇数。对应配置项是discovery.zen.minimum_master_nodes,在es7.0以后,已经成为默认配置,因此一般不会发生脑裂问题

29.3.4 总结

master eligible节点的作用是什么?

  • 参与集群选主
  • 主节点可以管理集群状态、管理分片信息、处理创建和删除索引库的请求

data节点的作用是什么?

  • 数据的CRUD

coordinator节点的作用是什么?

  • 路由请求到其它节点
  • 合并查询到的结果,返回给用户

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/75423.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RAID图解

RAID图解什么是RAID各种 RAID 详解RAID 0RAID 1RAID 2(已淘汰)RAID 3RAID 4RAID 5RAID 6RAID 7RAID 01RAID 10RAID 10和RAID 01有何区别?实操教程其他问题最近在涉及到服务器安装系统这块才了解到RAID这个知识点,上网了解该知识&a…

Nginx 动静分离相关配置解析

Nginx 动静分离相关配置解析 本篇主要介绍nginx 动静分离相关配置解析 概述 动静分离是让动态网站里的动态网页根据一定规则把不变的资源和经常变的资源区分开来,动静资源做好了拆分以后,我们就可以根据静态资源的特点将其做缓存操作,这就是…

基于jsp+mysql+ssm智慧仓库进销存系统-计算机毕业设计

项目介绍 企业仓库库存系统的设计在SSM的框架下,采用JAVA编程语言和JSP技术,,并使用Mysql作为系统的数据库。该系统设计了强大的功能模块,考虑了企业库存管理的各个方面。这些主要功能模块分别是系统用户管理、用户信息管理、商品…

CUDNN与CUDA的踩坑与记录

CUDNN与CUDA的踩坑与记录 CUDA的安装 nvidia-smi看显卡驱动能够安装的最高版本的CUDA下载CUDA–>点击安装过程去掉显卡驱动安装完成的结果如下:Summary Driver: Not Selected Toolkit: Installed in /usr/local/cuda-10.2/ Samples: Installed in /home/g…

【世界杯中的安全思考】工控设备

目录 1、总述 2、半自动越位技术:人工智能辅助裁判 3、卡塔尔的智能道路 4、体育场的冷却技术 5、医疗援助的可穿戴设备 6、实时导航 7、照明系统 8、感官观察室 1、总述 从世界杯带来的科技感,可以看出大到球场,小到足球,…

厨房装修竟然有这么多你不知道的事

每个家庭的厨房大小、形状不同,厨房的建筑结构在房子中往往也是比较复杂的,橱柜等设施如何安置,都要因地制宜,很难说怎样做最好。但这并不意味着厨房的布局没有规律可循。在规划厨房布局时,最简单的办法就是按照做饭的…

微服务框架 SpringCloud微服务架构 29 ES 集群 29.1 集群结构介绍

微服务框架 【SpringCloudRabbitMQDockerRedis搜索分布式,系统详解springcloud微服务技术栈课程|黑马程序员Java微服务】 SpringCloud微服务架构 文章目录微服务框架SpringCloud微服务架构29 ES 集群29.1 集群结构介绍29.1.1 ES集群结构29 ES 集群 29.1 集群结构…

银行软件测试简历模板,找工作的小伙伴看过来了

目录 个人简历 教育背景 工作经历 自我评价 专业技能 总结 重点:配套学习资料和视频教学 个人简历 姓  名: 性  别: 学  历: 经  验: 手  机: 邮  箱: 政治面貌&#…

水滴公司Q3财报引股价增长,保险业复苏“第一枪”打响了?

2020年以来,保险行业整体都笼罩在发展失速的低迷中。 2020年,在保险中介监管信息系统执业登记的保险销售从业人员有971.2万人,而2022年6月,这项数据为570.7万人,接近腰斩。公开数据显示,2022前三季度&…

DDR4时序标准规范(二)

DDR4时序标准规范编码模式寄存器(MRx)模式寄存器0(MR0)CAS延迟测试模式TM写恢复(WR)/读预充DLL(延时锁相环)复位模式寄存器1(MR1)DLL(延时锁相环)使能/禁用ODT RTT(标称)值AL(附加延迟)写入均衡终端数据选通(TDQS)模式寄存器2(MR2)CAS写延迟低功耗自动自…

在ros中创建yolov5-onnxruntime功能包

文章目录 工作目录依赖库ROS其他依赖库Yolov5-onnxruntimeCMakeLists.txt编译可能存在的问题工作目录 在vscode中新建功能包apple_detect 依赖库 ROS cv_bridgegeometry_msgsimage_transportmessage_generationroscpprospysensor_msgsstd_msgs其他依赖库 opencv4.6.0onnxru…

计算机毕业设计ssm+vue基本微信小程序的心理咨询服务系统 uniapp 小程序

项目介绍 随着计算机技术的发展,带来社会各行业的进步,信息化逐渐运用到人们的生活中。传统模式的会员心理健康管理满足不了现代人的生活追求,服务质量、服务速度,之前的很多网站由于功能、或者框架设计等原因,无法完美的展现它的特色,优势,浪费了很多资源。使用管理系统进行管…

绿色荧光试剂210236-90-1,Fitc-TSA,Fluorescein TSA,Fitc-Tyramide荧光素酪胺

试剂基团反应特点(Reagent group reaction characteristics): Fluorescein Tyramide(荧光素酪胺)是一种绿色荧光试剂,广泛用于 IHC、ICC、FISH 和多色 FISH 中的酪胺信号放大 (TSA)。 HRP 催化多个酪胺分子…

2023最新SSM计算机毕业设计选题大全(附源码+LW)之java垃圾回收系统j16l0

这个选题的话其实有很多的,就看你自己能接受怎么样的,比如可以做网站类、系统类、小程序类、安卓app、大数据类等等,这个也要看你个人能力和技术问题,如果技术小白或者有一点点基础的话建议选择网站类和系统类的,如果有…

用HTML+CSS做一个漂亮简单大学生校园班级网页

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

数据时代,漫谈数据建模

不管什么样的模型都可以理解为一种预设,比如像一张大宽表,它的维度和指标在大宽表中就是固定的,只是维度列多一些,指标多一些,给了用户更多的一种组合维度和指标的可能,并不是说就没有模型的概念。 在理解…

Python实战案例,PyQt5模块,实现疫情信息快速查看工具(附源码)

前言 今天给大家介绍的是Python疫情信息快速查看工具,在这里给需要的小伙伴们代码,并且给出一点小心得。 PyQt概述 PyQt5是Qt框架的Python语言实现,由Riverbank Computing开发,是最强大的GUI库之一。PyQt提供了一个设计良好的窗…

springcloud3 EurekaClient单机搭建2

一 EurekaClient-provider提供者搭建 工程架构 1.1 搭建步骤 1.1.1 复制模块 复制mscloud-provider模块变成 mscloud-provider8004 1.1.2.修改pom 新增eureka-client的依赖 完整代码 <dependency><groupId>junit</groupId><artifactId>junit</…

Pluggy源码解读----pluggy源码解读基础准备

【原文链接】Pluggy源码解读----pluggy源码解读基础准备 解读pluggy源码&#xff0c;直接使用pytest环境中安装的pluggy即可&#xff0c;比如这里安装的pluggy版本是1.0.0&#xff0c;为了更好的理解源码&#xff0c;这里首先使用如下应用代码作为应用实例&#xff0c;从如下代…

ASEMI电磁炉整流桥KBJ2510参数和性能

编辑-Z ASEMI电磁炉整流桥KBJ2510参数和性能怎么样呢&#xff1f;ASEMI采用波峰的GPP大芯片&#xff0c;工艺制造&#xff0c;稳定性高&#xff0c;抗冲击性强。KBJ2510具体参数为&#xff1a;正电流&#xff1a;25A&#xff0c;反向耐压&#xff1a;1000V&#xff0c;反向电流…