ZAB协议提到:leader的广播流程是,先向集群内所有的follower发送 proposal后,收到过半follower的ack之后,再次向全部follower发送commit问题如下:
leader的广播流程是,先向集群内所有的follower发送 proposal后,收到过半follower的ack之后,再次向全部follower发送commit
第一个问题:leader服务器会为每个follower服务器都分配一个单独的FIFO队列,所有命令都会提交到对应队列里面去执行,如果follower没有执行预提交命令,那么就不会收到第二个执行最终提交的命令。第二个问题:如果是出现异常崩溃之类导致数据没有接收亦或超过半数服务器与leader服务器未能保持正常通信时,那么在开始新一轮原子广播事务前,会通过崩溃恢复协议使得彼此达到一致的状态。
1.4m articles
1.4m replys
5 comments
57.0k users