ZAB 和paxos 简介

ZAB: zookeeper Automic Broadcast

ZAB, Paxos两者的联系:

两者都存在类似leader的角色,由其负责协调多个follower的工作

leader进程都会等待超过半数的follower做出正确的反馈后,才会将一个提案进行提交

在ZAB协议中,每个proposal都包含一个epoch值,用来代表当前leader周期, Paxos算法中,同样存在这样的标识,只是名字为Ballot

Paxos算法一个leader选举过程中,会进行2个阶段的操作,

第一阶段为读阶段,新的主进程会通过所有其他进程进行通信的方式来收集上一个主进程提出的提案,并将提案提交

第二阶段为写阶段,主进程提出自己的提案.

ZAB协议分为3个阶段

第一阶段, 类似paxos读阶段, zab中为发现阶段,

第二阶段,同步阶段,新的leader会确保在过半follower已经提交了之前leader周期中所有事务proposal,同步阶段可以保证leader在新的周期提出事务proposal之前, 所有进程均已经完成了对之前事务proposal的提交.

第三阶段,同步阶段完成之后, 类似paxos的写阶段执行.


总结:

ZAB协议和paxos协议本质区别在于, ZAB协议主要用于构建一个高可用的分布式数据主备系统.

Paxos算法用于构建一个分布式的一致性状态机系统

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值