目前 3 台机器 master(2core 4g), node1(1core 1g) node2(1core 2g)
zookeeper 的服务启动顺序为 master -> node1 -> node2
发现 node1 选举为 leader 了
不是根据机器好坏来的吗?
目前 3 台机器 master(2core 4g), node1(1core 1g) node2(1core 2g)
zookeeper 的服务启动顺序为 master -> node1 -> node2
发现 node1 选举为 leader 了
不是根据机器好坏来的吗?
1
misaka19000 Dec 12, 2018 via Android
zk 用的是 zaxb 算法吧
|
2
p2p Dec 12, 2018
选举投票 myid 大的优先 zxid 大的优先
|
3
Miiiz Dec 12, 2018
优先检查 zxid,大的胜出,如果 zxid 一样则 myid 大的胜出
|
4
Wisho Dec 12, 2018
zk 用的是 zab 协议吧,优先选 zxid (浅显理解成记录 id )大的,zxid 相同时优先选机器 id 大的。
|
5
bravoer Dec 12, 2018
去看 zab 的论文 有详细的说明。
|
6
scalaer OP |
7
xiaoxinshiwo Dec 12, 2018
raft ? paxos ?
https://raft.github.io/ |
8
TheCure Dec 12, 2018
原理一致 https://zhuanlan.zhihu.com/p/40395929
简单来说就是所有机器维护一个 Term, 并且保证在一个相同的 Term 内只投一次票 |