码迷,mamicode.com
首页 > 其他好文 > 详细

Zookeeper leader选举

时间:2018-05-22 19:06:41      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:通知   服务   过程   UI   开发   node   复杂   监视   gui   

Zookeeper leader选举

由 xpproen 创建,youj 最后一次修改 2016-12-27

 

让我们分析如何在ZooKeeper集合中选举leader节点。考虑一个集群中有N个节点。leader选举的过程如下:

 

  • 所有节点创建具有相同路径 /app/leader_election/guid_ 的顺序、临时节点。
  • ZooKeeper集合将附加10位序列号到路径,创建的znode将是 /app/leader_election/guid_0000000001,/app/leader_election/guid_0000000002等。
  • 对于给定的实例,在znode中创建最小数字的节点成为leader,而所有其他节点是follower。
  • 每个follower节点监视下一个具有最小数字的znode。例如,创建znode/app/leader_election/guid_0000000008的节点将监视znode/app/leader_election/guid_0000000007,创建znode/app/leader_election/guid_0000000007的节点将监视znode/app/leader_election/guid_0000000006。
  • 如果leader关闭,则其相应的znode/app/leader_electionN会被删除。
  • 下一个在线follower节点将通过监视器获得关于leader移除的通知。
  • 下一个在线follower节点将检查是否存在其他具有最小数字的znode。如果没有,那么它将承担leader的角色。否则,它找到的创建具有最小数字的znode的节点将作为leader。
  • 类似地,所有其他follower节点选举创建具有最小数字的znode的节点作为leader。

 

leader选举是一个复杂的过程,但ZooKeeper服务使它非常简单。让我们在下一章中继续学习ZooKeeper安装,以用于开发目的。

Zookeeper leader选举

标签:通知   服务   过程   UI   开发   node   复杂   监视   gui   

原文地址:https://www.cnblogs.com/youqc/p/9073514.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!