当前位置: 首页 > 图灵资讯 > java面试题> 金三银四精选java面试题-什么是ZAB协议

金三银四精选java面试题-什么是ZAB协议

来源:图灵教育
时间:2023-12-21 13:06:47
 

什么是ZAB协议

ZAB协议是Zookeeper用来实现一致性的原子广播协议,该协议描述了Zookeeper是如何实现一致性的,分为三个阶段:

  1. 领导者选举阶段:从Zookeeper集群中选出一个节点作为Leader,所有的写请求都会由Leader节点来处理
  2. 数据同步阶段:集群中所有节点中的数据要和Leader节点保持一致,如果不一致则要进行同步
  3. 请求广播阶段:当Leader节点接收到写请求时,会利用两阶段提交来广播该写请求,使得写请求像事务一样在其他节点上执行,达到节点上的数据实时一致

 

但值得注意的是,Zookeeper只是尽量的在达到强一致性,实际上仍然只是最终一致性的。