Zookeeper对CAP的澄清

时间:2017-02-10 15:19:35

标签: apache-zookeeper

我想阐明我对CAP定理的理解

例如:Zookeeper被归类为CP(Consistent and Partition Tolerant)

这是什么意思?如果分区失败,系统是否返回一致的数据? 或者是否意味着当ZK集群中的节点之间存在连接问题时,ZK不可用。

如果是,那意味着当集群中的节点无法相互通信时,整个ZK都会关闭。

1 个答案:

答案 0 :(得分:1)

只要有仲裁意味着大多数节点可用,Zookeeper就会处理请求。由于它需要大部分节点而不是所有节点都能够容忍网络分区。

它将数据复制到所有节点(至少是仲裁)以保持一致。

如果领导者不能当选,那么zookeeper(没有法定人数)将失败请求,这就是为什么它没有高度可用。

通常,3或5个服务器用于zookeeper,仲裁将分别为2或3个节点。

有关详细信息,请参阅此博客文章。 https://www.ibm.com/developerworks/library/bd-zookeeper/index.html