一、简语:

ZAB协议是Paxos算法的经典实现

二、ZAB协议的两种模式:

崩溃恢复:

1.每个server都有一张选票(myid,zxid),选票投给自己

2.收集所有server的投票

3.比较投票(逻辑:优先比较zxid,选出zxid最大的,其次比较myid)

4.改变服务器状态(崩溃恢复->消息广播 或 崩溃恢复->数据同步)

消息广播:

1.leader接收请求后,生成全局唯一的64位自增zxid的议案

2.将议案发给所有的follower

3.所有的follower收到议案后,先将议案写入硬盘后,马上回复leader一个ACK

4.当leader收到合法数量的ACK后,leader会给所有的follower发送commit命令

5.follower执行commit命令

待续

版权声明:本文为sunrisexq原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/sunrisexq/p/9005777.html