Java 后端面试题库 / 全部题解免费阅读理解原理,有条理地回答

ZooKeeper 的完整选举和接管过程是什么?

查看完整题解

参考回答

直接回答

发现无法继续跟随旧 Leader 后,投票成员进入 LOOKING,先提出候选、交换通知,再等足够多成员支持同一候选。选出的节点要进行恢复,完成后才对外继续提交。

讲清原理

每轮用选举轮次判断消息是否属于当前选举,再按 peerEpoch、zxid、候选成员 ID 比较。选举阶段确认候选和票数。恢复阶段用日志位置和新 epoch 与成员同步,进入正常原子广播。

例子与易错点

原三台中的 Leader 掉线,另两台可选出候选并同步。仅一台还有网络时,即使它的本地日志最新,也不能单独接管。

延伸阅读 ZooKeeper 怎么选出 Leader? · ZAB 协议是什么,为什么分恢复与广播? · ZooKeeper 选举中的五元组分别是什么?

这道题,你掌握得怎么样?

掌握程度由你主动标记,阅读和收藏不会自动改变状态。