美文网首页nacos
nacos源码分析——raft如何心跳保持

nacos源码分析——raft如何心跳保持

作者: 黄云斌huangyunbin | 来源:发表于2018-08-25 09:34 被阅读173次
    raft的一个基本逻辑是leader隔一段时间给所有的follower发心跳。如果follower长时间没收到心跳,就认为leader已经挂了,就发起投票选举新的leader。

    在RaftCore的init方法里面


    image.png
    HeartBeat 就是leader的心跳定时任务
    MasterElection 就是follower长时间没收到心跳就选举的定时任务

    HeartBeat的sendBeat就是具体发送心跳信息了
    image.png
    follower收到心跳请求的时候
    image.png
    receivedBeat 方法会执行 resetLeaderDue();
    image.png
    follower就是根据这个变量判断是否要重新选leader的。
    image.png

    这样就全部串起来了

    相关文章

      网友评论

        本文标题:nacos源码分析——raft如何心跳保持

        本文链接:https://www.haomeiwen.com/subject/pwpwiftx.html