在Zookeeper中,主要依赖ZAB协议来实现分布式数据一致性。ZAB协议分为两部分:消息广播崩溃恢复消息广播Zookeeper使用单一的主进程Leader来接收和处理客户端所有事务请求,并采用ZAB协议的原子广播协议,将事务请求以Proposal提议广播到所有Follower节点,当集群中有过半的Follower服务器进行正确的ACK反馈,那么Leader就会再次向所有的Follower服务器发送commit消息,将此次提案进行提交。这个过程可以简称为2pc事务提交,整个流程可以参考下图,注意Observer节点只负责同步Leader数据,不参与2PC数据同步过程。崩溃恢复在正常情况消息广