杂记01

1. ZAB协议和Paxos算法:

    简单的理解, ZAB协议是Paxos算法的优化。

    Paxos算法在出现竞争的情况下,其收敛速度很慢,甚至可能出现活锁的情况,例如当有三个及三个以上的proposer在发送prepare请求后,很难有一个proposer收到半数以上的回复而不断地执行第一阶段的协议。

    因此,为了避免竞争,加快收敛的速度,在算法中引入了一个Leader这个角色,在正常情况下同时应该最多只能有一个参与者扮演Leader角色,而其它的参与者则扮演Acceptor的角色。

    在这种优化算法中,只有Leader可以提出议案,从而避免了竞争使得算法能够快速地收敛而趋于一致;而为了保证Leader的健壮性,又引入了Leader选举,再考虑到同步的阶段,渐渐的你会发现对Paxos算法的

    简化和优化已经和上面介绍的ZAB协议很相似了。

    参见:https://my.oschina.net/OutOfMemory/blog/812947

2. 

猜你喜欢

转载自www.cnblogs.com/Jtianlin/p/9034900.html