JavaGuide
JavaGuide copied to clipboard
CAP & BASE 页面对zookeeper read 一致性的论述错误
https://javaguide.cn/distributed-system/theorem&algorithm&protocol/cap&base-theorem.html#cap-%E5%AE%9E%E9%99%85%E5%BA%94%E7%94%A8%E6%A1%88%E4%BE%8B
任何时刻对 ZooKeeper 的读请求都能得到一致性的结果
是错误的,这应该是一个很常见的误区,由于read 并不会触发quorum内的sync,在同一时间点不同的client views 会因为网络延迟等原因呈现不同的结果
参照 https://zookeeper.apache.org/doc/current/zookeeperInternals.html#sc_consistency
Read operations in ZooKeeper are not linearizable since they can return potentially stale data.