1、选举相关概念:

选票:(myid,zxid,当前节点选取轮次,被推举服务器选举轮次,状态(looking))。

选举发生情况:启动时选举,运行时选举。

外部投票:其他服务器发送来的投票。

内部投票:服务器自身当前的投票。

选举轮次:epoch--leader选举周期。

pk:比较内部选票和外部选票,确定是否变更内部选票,主要是比较zxid和myid。

2、选举过程:

(1)每个服务器节点先初始化自己的选票,即(myid,zxid,当前节点选取轮次,被推举服务器选举轮次,状态(looking))。

(2)发送初始化选票到所有集群中的节点。

(3)接收外部选票

(4)判断选举轮次,内部选票选举轮次要是大于外部选票,就继续接收外部选票,如果小于等于外部的选举轮次,就进行选票pk,即判断自己是否要变更内部选票。

(5)变更内部选票,将选票发送至集群中。

(6)归档。每个节点将收到的所有外部选票进行归档。

(7)统计。判断是否有过半的服务器认可当前内部选票,如果是,那就选举结束,即超过一半选票同意新leader,那就成功。

最新文章

  1. uva10160 Servicing Stations
  2. Linux X Window System运行原理和启动过程
  3. asp.net读取txt并导入数据库
  4. MySQL 的 read_buffer_size 参数是如何影响写缓冲和写性能的?
  5. DataTable 修改列名 删除列 调整列顺序
  6. duilib 新增数据迁移界面
  7. AJAX请求方式
  8. Web API 方法的返回类型、格式器、过滤器
  9. 9.7 dubbo心跳机制
  10. GitHub教程手册、使用流程
  11. 利用windows的计划任务和eKing.CmdReadFileAndSendEmailOper(控制台小程序)实现远程登录服务器的邮件告警提醒
  12. @interface注释用法
  13. Egret入门了解
  14. day4之装饰器进阶、生成器迭代器
  15. Back Track 5 之 网络踩点
  16. 【转】排名前十位的Linux发行版介绍
  17. Android 图片旋转
  18. python 旧类中使用property特性的方法
  19. 记录-Jquery uploadify文件上传实例
  20. Brotli

热门文章

  1. [转帖]AMD Zen霄龙中国版:海光x86拿下加解密全球第一
  2. python技巧 — 整合 User-Agent 大全汇总
  3. python模块知识四 包和logging日志
  4. 记录一次mysql宕机的解决办法
  5. easy ui 常用控件配置
  6. BUAA_OO第三单元总结性博客作业——JML
  7. Cookie 和 Session 总结
  8. sourceTree 3.X免注册[学习]
  9. border-radius圆角属性
  10. Centos 端口被占用,kill被占用的进程