一、Consistency Guarantees 一致性保证
-
Sequential Consistency
顺序一致性:同一个客户端发起的更新顺序执行
-
Atomicity
更新具有原子性,要么成功要么失败
-
Single System Image
单一视图:不管客户端连接哪一个服务节点,都不会看到更早版本的数据 实现原理:客户端从服务节点获取数据的同时还会获取最新的事物ID zxid,断开重连时会发给服务端,服务端判断自己zxid没有客户端的大,会拒绝连接 个人理解这里的zxid是全局最大的zxid,并不特指某一个具体数据的zxid ?
-
Reliability
可靠性:更新一旦成功就永久有效 monotonicity condition in Paxos
-
Timeliness
客户端在一定时间内看到的数据是最新的 ???不理解
二、用途
Using these consistency guarantees it is easy to build higher level functions such as leader election, barriers, queues, and read/write revocable locks solely at the ZooKeeper client (no additions needed to ZooKeeper)
ZooKeeper Recipes and Solutions
todo:重点阅读
参考
深入浅析zookeeper的一致性模型及其实现
如何理解 ZooKeeper 一致性保证中的 Single System Image?