Raft 的 PreVote 防什么,和防脑裂有何关系?
查看完整题解
参考回答
直接回答
PreVote 让节点在正式提高任期前,先问足够多的节点是否愿意给它投票。被隔离的少数派不容易持续抬高任期,重新连上时也较少干扰健康领导者。
讲清原理
防止两个分区同时提交冲突日志,主要靠多数派相交与 Raft 的安全规则。PreVote 减少孤立节点反复发起的选举,还有正常选举的日志与任期检查。
例子与易错点
一个孤立节点拿不到预投票多数,就不会因为每次选举计时结束都提高任期,恢复后原集群更容易保持稳定。
延伸阅读 Raft 如何确保复制的日志保持一致? · etcd 怎么用 Raft 保证写入的强一致性? · etcd 一个成员宕机后怎样恢复?
这道题,你掌握得怎么样?
掌握程度由你主动标记,阅读和收藏不会自动改变状态。