作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
动物园管理员专家。
我问的问题对你来说可能很基础,但我是 ZK 的新手,我还没有掌握该工具,所以请原谅。考虑到这一点,这是我的问题。
假设我有一个由 5 个服务器组成的 ZK 集群,我有 3 个法定人数。现在这保证了服务器不会进入裂脑场景,如果它们位于两个物理上独立的 DC 或机器中。
不过,我想知道的是,如果Quorum设置为3,就意味着Leader服务器,需要等到至少有2台服务器复制写入的数据,一共复制了3个数据。但是,如果客户端连接到不属于 Quorum 的任何 2 个服务器的服务器,那不就意味着它获得了旧数据吗?
最佳答案
首先,您无法“设置”法定人数。它是根据配置自动计算的,使用 N/2+1
(多数),其中 N 是 zookeeper 服务器的数量 *。
不属于 Quorum 的 Zookeeper 服务器变得不可用并且无法将数据提供给客户端,因此没有看到旧数据的风险。
关于apache-zookeeper - Zookeeper 法定人数和非法定人数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53213411/
我是一名优秀的程序员,十分优秀!