文章目录
-
- 参考资料
- 背景
- 说明
参考资料
动画演示共识过程
背景
- Paxos族算法,非拜占庭容错类共识
- 1989年,Leslie Lamport在工作论文The part-time parliament中提出Paxos 算法, 由于文章采用了讲故事的叙事风格且内容过于艰深晦涩,直到1998 年才通过评审,发表在ACM transactions on computer systems 期刊上.
Leslie Lamport. The part-time parliament[J]. ACM Transactions on Computer Systems (TOCS),1998,16(2).
- Paxos算法是基于消息传递的一致性算法,主要解决分布式系统如何就某个特定值达成一致的问题
- 2013年,斯坦福大学的迭戈 · 翁伽罗(Diego Ongaro) 和约翰 · 奥斯特豪特(John Ousterhout)提出了Raft 共识算法,初衷是设计一种比Paxos更易于理解和实现的共识算法
In search of an understandable consensus algorithm
- Raft一致性算法就是比Paxos简单又能实现Paxos所解决的问题的一致性算法
说明
思想:将复杂问题分解为几个小问题来处理,将算法流程分为子问题
- 选举(Leader election)
- 日志同步(Log replication)
- 安全性(Safety)
- 日志压缩(Log compaction)
- 成员变更(Membership change)