知识卡片
Zab先恢复再广播
内容
Zab 的 broadcast 阶段要求唯一 leader 且各副本历史一致;election、discovery、synchronization 先处理历史和 epoch,再进入广播。发散:很多协议的正常路径很短,复杂性主要藏在重新获得安全起点。
参考来源
- 位置:《分布式系统与一致性》第12章《原子广播算法Zab》阶段总览一节(源文件:_epub-src/OEBPS/Text/chapter16.xhtml)
- 结论依据:原文明确"无论是设计的Zab算法还是其他两种Zab算法的实现,开始broadcast阶段的前提条件都是:只有唯一的一个进程作为leader,并且leader与follower保持一致,也就是具有相同的数据",设计版的4个阶段是"选举(election)、发现(discovery)、同步(synchronization)、广播(broadcast)"。
- 原始内容:不管是哪个版本的Zab算法,都由多个阶段组成。设计的Zab算法有4个阶段:选举(election)、发现(discovery)、同步(synchronization)、广播(broadcast)……开始broadcast阶段的前提条件都是:只有唯一的一个进程作为leader,并且leader与follower保持一致,也就是具有相同的数据。