ZooKeeper 选举的过半机制防止脑裂

这篇具有很好参考价值的文章主要介绍了ZooKeeper 选举的过半机制防止脑裂。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

结论:

Zookeeper采用过半选举机制,防止了脑裂。

原因:

如果有5台节点,leader联系不上了,其他4个节点由于超过半数,所以又选出了一个leader,当失联的leader恢复网络时,发现集群中已经有了leader,会把自己降为flower,防止出现两个leader。

和NameNode不同的是,zookeeper是自己维护选举的,所以可以在程序中加判断避免,而NN是依赖zookeeper选举的,所以NN并不知道出现了脑裂。

NN不能自己维护选举的原因是:NN为了保证可用性,而zookeeper为了选举,会牺牲可用性。文章来源地址https://www.toymoban.com/news/detail-621861.html

到了这里,关于ZooKeeper 选举的过半机制防止脑裂的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Zookeeper快速入门(Zookeeper概述、安装、集群安装、选举机制、命令行操作、节点类型、监听器原理)

    1.1 概述 Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。 1、Zookeeper工作机制 Zookeeper从设置模式角度来理解:是一个基于观察者模式设计的分布式服务管理框架,它负责储存和管理大家都关心的数据,然后接受观察者的注册,一旦这些数据的状态发生

    2024年03月28日
    浏览(40)
  • ZooKeeper只完美解决Unable to read additional data from server sessionid 0x0报错问题,并带你深度理解ZooKeeper内部机制之选举机制

    🍅 作者简介:上火不找我,CSDN2022新星计划top4🏆、算法领域新星创造者💪 🍅有什么问题直接私信作者,秒回哦💪💪💪 Linux环境下 今天搭建了一个zookeeper集群,分别为server2,server3,server4。 报错如下: 在一个节点上进入到zookeeper命令行执行 zkCli.sh 时,报了下面这个异常! 一开

    2023年04月08日
    浏览(47)
  • Zookeeper 脑裂问题

    脑裂(split-brain)就是“大脑分裂”,也就是本来一个“大脑”被拆分了两个或多个“大脑”,如果一个人有多个大脑,并且相互独立的话,那么会导致人体“手舞足蹈”,“不听使唤”。 脑裂通常会出现在集群环境中,比如ElasticSearch、Zookeeper集群,而这些集群环境有一个统一

    2024年02月11日
    浏览(26)
  • Kafka 和 Zookeeper 的 Leader 和 Follower 区别(选举&数据同步)

    》Client与Server通过NIO通信 》全局串行化所有的写操作 》保证同一客户端的指令被FIFO执行 》保证消息通知的FIFO (2)kafka 不同,只有leader 负责读写,follower只负责备份,如果leader宕机的话,Kafaka动态维护了一个同步状态的副本的集合(a set of in-sync replicas),简称ISR,ISR中有f+1个节

    2024年04月10日
    浏览(54)
  • 【集群】脑裂是什么?Zookeeper是如何解决的?

    脑裂(split-brain)就是“大脑分裂”,也就是本来一个“大脑”被拆分了两个或多个“大脑”,我们都知道,如果一个人有多个大脑,并且相互独立的话,那么会导致人体“手舞足蹈”,“不听使唤”。 脑裂通常会出现在集群环境中,比如ElasticSearch、Zookeeper集群,而这些集群环

    2024年02月16日
    浏览(23)
  • zookeeper选举流程源码分析

    zookeeper选举流程源码分析 选举的代码主要是在 QuorumPeer.java 这个类中。 它有一个内部枚举类,用来表示当前节点的状态。 LOOKING: 当前节点在选举过程中 FOLLOWING:当前节点是从节点 LEADING: 当前节点是主节点 OBSERVING: 当前节点是观察者状态,这种状态的节点不参与选举的投

    2024年02月11日
    浏览(26)
  • zookeeper源码(04)leader选举流程

    在\\\"zookeeper源码(03)集群启动流程\\\"中介绍了leader选举的入口,本文将详细分析leader选举组件和流程。 quorumPeer的start阶段使用startLeaderElection()方法启动选举 LOOKING状态,投自己一票 createElectionAlgorithm - 创建选举核心组件:QuorumCnxManager(管理连接)、FastLeaderElection(选举)等 quorumPeer的

    2024年02月05日
    浏览(28)
  • 浅谈Zookeeper集群选举Leader节点源码

    写在前面: zookeeper源码比较复杂,本文讲解的重点为各个zookeeper服务节点之间的state选举。至于各个节点之间的数据同步,不在文本的侧重讲解范围内。 在没有对zookeeper组件有一个整体架构认识的基础上,不建议直接死磕细节。本文写作的目的也是基于此,阅读本文,希望读

    2024年02月07日
    浏览(32)
  • ZooKeeper的应用场景(集群管理、Master选举)

    随着分布式系统规模的日益扩大,集群中的机器规模也随之变大,因此,如何更好地进行集群管理也显得越来越重要了。 所谓集群管理,包括集群监控与集群控制两大块,前者侧重对集群运行时状态的收集,后者则是对集群进行操作与控制。在日常开发和运维过程中,我们经

    2024年02月12日
    浏览(24)
  • Redis——哨兵模式与Zookeeper选举的异同点

    当我们使用主从复制出现的问题:手动故障转移:写能力和存储能力受限:主从复制 -master 宕机故障处理。 主从切换技术的方法是:当主服务器宕机后,需要手动把一台从服务器切换为主服务器,这就需要人工干预,费事费力,还会造成一段时间内服务不可用。这不是一种推

    2024年02月06日
    浏览(25)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包