术语
- Proposal Value:提案的值。即合同约定中指定的票选候选人。
- Proposal Number:提案的编号。会在贿选阶段,本地持久化。(比喻为
承诺贿金) - Proposal:提案=提案的编号+提案的值。
- Chosen:批准/选定,一旦某个值被Chosen,后续Paxos都必须用该值进行交互。
算法分析
-
算法背景是什么?
答:分布式节点,需要消息互通,保持状态(数据)一致性。
-
算法面临的挑战是什么?
答:CA的抉择,以及对于P的无奈(网络丢包现象不可避免,无法掌控)。
-
算法追求的效果是什么?
答:不是强一致性(Strong Consistency),而是最终一致性(Eventual Consistency)。
-
算法映射到现实,如何解读?
答:民主选举的过程。
-
最终的选举结果如何确定?
答:少数服从多数。
-
如何保障选举一定会出现超过半数投票一致的情况?
答:二阶段:贿选阶段(prepare->promise)+提议阶段(propose->accept)。
一阶段选举,可能出现
选票邮寄过期(网络延迟)、选票分散各自为政(一定概率,而二阶段的chosen实际是提供了趋同性),导致无人超过半数的情况。 二阶段选举,选民贿选阶段(理解为口头协议)以出价最高者为个人最优决策(利益约束),最终以提议阶段(理解为合同协议)双方约定票选指定候选人(法律约束)。但是可能出现恶性贿选(不

本文详细介绍了Paxos算法,包括其术语、算法分析和与Raft的对比。Paxos旨在实现分布式系统的最终一致性,通过二阶段选举解决网络丢包等问题,确保在多数节点同意的情况下达成一致。文中还探讨了Paxos与Raft的区别,并提供了相关参考资料。
最低0.47元/天 解锁文章
9878

被折叠的 条评论
为什么被折叠?



