Zookeeper的Leader选举涉及哪些知识点?

Zookeeper为了保证各节点的协同工作,在工作时需要一个Leader角色,而Zookeeper默认采用FastLeaderElection算法,且投票数大于半数则胜出的机制,再介绍选举机制前,首先了解选举涉及的相关概念。 Python技术文章2021-06-17 |传智教育 | Zookeeper, Zookeeper选举机制需要,自主选择leader

Zookeeper为了保证各节点的协同工作,在工作时需要一个Leader角色,而Zookeeper默认采用FastLeaderElection算法,且投票数大于半数则胜出的机制,再介绍选举机制前,首先了解选举涉及的相关概念。

1.服务器ID

这是在配置集群时设置的myid参数文件,且参数分别表示为服务器1、服务器2、服务器3,编号越大在FastLeaderElection算法中的权重越大。

2.选举状态

在选举过程中,Zookeeper服务器有四种状态,它们分别为竞选状态(LOOKING)、随从状态(FOLLOWING,同步leader状态,参与投票)、观察状态(OBSERVING,同步leader状态,不参与投票)、领导者状态(LEADING)。

3.数据ID

是服务器中存放的最新数据版本号,该值越大则说明数据越新,在选举过程中数据越新权重越大。

4.逻辑时钟

通俗的讲,逻辑时钟被称为投票次数,同一轮投票过程中的逻辑时钟值是相同的,逻辑时钟起始值为0,每投完一次票,这个数据就会增加。然后,与接收到其它服务器返回的投票信息中的数值相比较,根据不同的值做出不同的判断。如果某台机器宕机,那么这台机器不会参与投票,因此逻辑时钟也会比其他的低。

Python教程

组合数据类型有几类?各种类型特点是什么?

2021-7-10 8:38:35

Python教程

Znode的作用是什么?节点属性有哪些?

2021-7-10 12:41:57

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
有新私信 私信列表
搜索