Paxos
几大要点
1.一个Acceptor必须接受它收到的第一个提案。
2.一个提案被选定需要被半数以上的Acceptor接受
3.一个Acceptor必须能够接受不止一个提案!
4.『提案=提案编号+value』
5.如果某个value为v的提案被选定了,那么每个编号更高的被选定提案的value必须也是v。
6.如果某个value为v的提案被选定了,那么每个编号更高的被Acceptor接受的提案的value必须也是v。
7.如果某个value为v的提案被选定了,那么之后任何Proposer提出的编号更高的提案的value必须也是v。
8. 对于任意的N和V,如果提案[N, V]被提出,那么存在一个半数以上的Acceptor组成的集合S,满足以下两个条件中的任意一个:
S中每个Acceptor都没有接受过编号小于N的提案。
S中Acceptor接受过的最大编号的提案的value为V。
9.一个Acceptor只要尚未响应过任何编号大于N的Prepare请求,那么他就可以接受这个编号为N的提案。
http://www.cnblogs.com/linbingdong/p/6253479.html
ZAB