zoukankan      html  css  js  c++  java
  • ZooKeeper之选举(fastleaderelection算法)

    ZooKeeper之选举(fastleaderelection算法)

    每个节点除了zxid,还会有一个myyid(在部署ZooKeeper的时候自己创建并编写任意不相同的数字)

    1. 启动选举
    2. 运行时选举

    概念

    • 外部投票:其他服务器发来的投票
    • 内部投票:服务器自身的投票
    • 选举轮次:leader周期,可以理解为epoch

    pk:比较外部投票与内部投票,确定是否变更内部投票

    1. 每个节点初始化自己的选票(myid、zxid,当前节点选举轮次,被推荐的服务器选举轮次,状态(looking))
    2. 发送初始化选票
    3. 接受外部选票
    4. 判断选举轮次(大于外转3,小于、等于),进行PK
    5. 变更投票,重新发送
    6. 归档,每个节点会将收到的外部投票进行归档
    7. 统计。判断是否有过半的服务器认可当前的投票,如果则终止。
  • 相关阅读:
    Ado.net 02
    Ado.net01
    sql05
    sql04
    sql03
    sql02
    sql01
    czC#02
    czC#02
    Vue之render函数
  • 原文地址:https://www.cnblogs.com/we9999/p/12398433.html
Copyright © 2011-2022 走看看