我第一遍读《Paxos Made Simple》时,其实是被“Made Simple”这个标题骗进去的。Lamport 写这篇论文确实想把它讲得更容易,但真正一行行读下来,仍然会撞上一堆从来没见过的定义:proposal、acceptor、promise、chosen……每个词都认识,连起来却不知道这个算法为什么能保证不分裂。这篇《Paxos Made Simple | 论文注解》不是论文的逐字翻译,而是我多年后带着工程问题上百次回读后,把里面的思路重新拆开、再读一遍的笔记。
我会按一条更容易理解的主线来写:先弄清楚 Paxos 到底在什么前提下解决什么问题,再亲手走一遍 Basic Paxos 的两阶段流程,然后解释为什么这套流程能保证“只定一个值”,最后补充从论文走到 Multi-Paxos 时工程上必须面对的那些坑。如果你原本就打算复现或者实现一个共识模块,这些内容会比单纯
