zk选举和加锁流程

215 阅读1分钟

1.选举原理

1.1每个节点像其他节点发送消息:选举自己.
1.2每个节点接收其他节点的消息,对比事务id,如果接收到其他节点的事务id比自己大,就选其他节点,如果事务id一样大,就比较编号id,选编号id大的。选完后再发送消息,每次投票完都会检查是否有过半的服务器有投了同一台服务器,如果有,则认为已经选出。后续启动的节点自动成为从节点。


2加锁原理

每个client在locker节点下创建一个节点,然后获取locker目录下的所有节点,查看自己是不是最小的那个,如果不是,则监听最小节点,当最小结点被删除时,会受到通知,再次
判断自己是不是最小的,以此重复。