V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
shangzhanyu
V2EX  ›  问与答

zookeeper follower 是如何知道 leader 节点挂了的?

  •  
  •   shangzhanyu · Sep 27, 2020 · 2260 views
    This topic created in 2040 days ago, the information mentioned may be changed or developed.
    如题,看书只看到说 leader 在挂掉时会进行 leader 选举,那么 follower 是如何感知到 leader 挂掉了?
    4 replies    2020-09-27 11:34:50 +08:00
    seanseek
        1
    seanseek  
       Sep 27, 2020
    不如试试搭个集群
    shangzhanyu
        2
    shangzhanyu  
    OP
       Sep 27, 2020
    @seanseek 默默打开了 docker
    singerll
        3
    singerll  
       Sep 27, 2020 via Android
    zookeeper 不知道,但一般都是探测端口或者保持自己的心跳协议
    wqlin
        4
    wqlin  
       Sep 27, 2020
    一般都是发送心跳包探活;
    如果指定时间内 follower 没有收到心跳包(不确定 zk 是 leader 向 follower 发心跳,还是 follower 向 leader 发心跳),就认为 leader 挂了,开始重新选举
    当然现实情况可能是 leader 没挂,只是由于网络网络被分开了,这种情况下还需要额外的机制保证不会脑裂(比如新选举出来的 leader 就是作为唯一 leader,老 leader 加入集群之后也变成 follower )
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5495 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 01:38 · PVG 09:38 · LAX 18:38 · JFK 21:38
    ♥ Do have faith in what you're doing.