Zookeeper 对 CAP 的澄清
Zookeeper clarification on CAP
我想澄清一下我对CAP定理的理解
例如:Zookeeper 被归类为 CP(一致性和分区容错)
这是什么意思?在分区失败的情况下,系统return数据是否一致?
或者这是否意味着 ZK 集群中的节点之间存在连接问题,ZK 不可用。
如果是,这意味着什么,当集群中的节点无法相互通信时,整个 ZK 就会崩溃。
只要有法定人数,Zookeeper 就会处理请求,这意味着大多数节点都可用。由于它需要大多数节点,所以它不能容忍网络分区。
它将数据复制到所有节点(至少是法定人数)以保持一致。
如果无法选出领导者,则 zookeeper(无法定人数)的请求将失败,这就是它不具备高可用性的原因。
通常 3 或 5 个服务器用于 zookeeper,仲裁将分别为 2 或 3 个节点。
有关详细信息,请参阅此博客 post。
https://www.ibm.com/developerworks/library/bd-zookeeper/index.html
我想澄清一下我对CAP定理的理解
例如:Zookeeper 被归类为 CP(一致性和分区容错)
这是什么意思?在分区失败的情况下,系统return数据是否一致? 或者这是否意味着 ZK 集群中的节点之间存在连接问题,ZK 不可用。
如果是,这意味着什么,当集群中的节点无法相互通信时,整个 ZK 就会崩溃。
只要有法定人数,Zookeeper 就会处理请求,这意味着大多数节点都可用。由于它需要大多数节点,所以它不能容忍网络分区。
它将数据复制到所有节点(至少是法定人数)以保持一致。
如果无法选出领导者,则 zookeeper(无法定人数)的请求将失败,这就是它不具备高可用性的原因。
通常 3 或 5 个服务器用于 zookeeper,仲裁将分别为 2 或 3 个节点。
有关详细信息,请参阅此博客 post。 https://www.ibm.com/developerworks/library/bd-zookeeper/index.html