加载中...
Paxos是一族解决分布式系统一致性问题的共识算法,能在节点故障、消息丢失或延迟的异步网络中,让多个副本对某个值达成一致。它由莱斯利·兰伯特提出,是分布式共识领域最经典也最难理解的算法之一。

| 中文名 | Paxos算法 |
| 提出者 | 莱斯利·兰伯特 |
| 提出时间 | 1990年 |
| 类型 | 分布式共识算法 |
| 容错前提 | 多数节点存活 |
Paxos算法是一族用于在不可靠分布式系统中达成共识的协议,其目标是让一组进程即使部分发生故障,也能就某个提案值达成唯一且一致的决定。它被誉为分布式一致性问题的理论基石。
Paxos由图灵奖得主莱斯利·兰伯特(Leslie Lamport)于1990年提出,并在1998年论文中以虚构的古希腊议会为背景正式发表。它以推导严谨著称,但也因表述晦涩而以难懂闻名,后来的Raft算法正是为了更易理解而设计。Paxos在只要多数节点存活的前提下,保证系统的安全性(不会决定出冲突的值)。
谷歌的Chubby锁服务、分布式数据库Spanner的副本一致性,均以Paxos为核心。ZooKeeper的ZAB协议、etcd背后的思想也与之一脉相承。工程实践中多采用其变体Multi-Paxos,以连续决定一系列值,构建高可用的复制状态机。
问:Paxos和Raft是什么关系?答:两者都解决分布式共识,安全性等价。Raft把问题拆成领导选举、日志复制、安全性三个清晰子模块,更易理解和实现,可视为Paxos思想的一种工程化重述。
问:为什么说Paxos只保证多数存活即可工作?答:因为它依赖多数派表决,只要超过半数节点正常,就能形成有交集的多数派完成决议;少数节点故障不影响整体达成一致。

| 中文名 | Paxos算法 |
| 提出者 | 莱斯利·兰伯特 |
| 提出时间 | 1990年 |
| 类型 | 分布式共识算法 |
| 容错前提 | 多数节点存活 |
登录 后参与讨论
暂无讨论,来发表第一条评论吧