初始化FastLeaderElection,QuorumCnxManager是一个很核心的对象,用来实现领导选举中的网络连接管理功能,这个后面会用到

public FastLeaderElection(QuorumPeer self, QuorumCnxManager manager){ this.stop = false;this.manager = manager; starter(self, manager);
} 

leader选举的源码分析-FastLeaderElection相关推荐

  1. leader选举的源码分析-FastLeaderElection.starter

    starter方法里面,设置了一些成员属性,并且构建了两个阻塞队列,分别是sendQueue和recvqueue.并且实例化了一个Messager private void starter(Quoru ...

  2. leader选举的源码分析

    源码分析,最关键的是要找到一个入口,对于zk的leader选举,并不是由客户端来触发,而是在启动的时候会触发一次选举.因此我们可以直接去看启动脚本zkServer.sh中的运行命令 ZOOMAIN就是 ...

  3. leader选举的源码分析-startLeaderElection

    看到这个方法,有没有两眼放光的感觉?没错,前面铺垫了这么长,终于进入leader选举的方法了 synchronized public void startLeaderElection() { try ...

  4. leader选举的源码分析-QuorumPeer.start

    QuorumPeer.start方法,重写了Thread的start.也就是在线程启动之前,会做以下操作 1. 通过loadDataBase恢复快照数据 2. cnxnFactory.start()  ...

  5. leader选举的源码分析-quorumPeer.createElectionAlgorithm

    根据对应的标识创建选举算法 protected Election createElectionAlgorithm(int electionAlgorithm){ Election le=null; / ...

  6. leader选举的源码分析-Messenger

    在Messenger里面构建了两个线程,一个是WorkerSender,一个是WorkerReceiver. 这两个线程是分别用来发送和接收消息的线程.具体做什么,暂时先不分析. Messenger( ...

  7. leader选举的源码分析-runFromConfig

    从名字可以看出来,是基于配置文件来进行启动. 所以整个方法都是对参数进行解析和设置 , 因为这些参数暂时还没用到,所以没必要去看.直接看核心的代码 quorumPeer.start(), 启动一个线程 ...

  8. 【Zookeeper】源码分析之Leader选举(一)

    一.前言 分析完了Zookeeper中的网络机制后,接着来分析Zookeeper中一个更为核心的模块,Leader选举. 二.总结框架图 对于Leader选举,其总体框架图如下图所示 说明: 选举的父 ...

  9. Zookeeper之Leader选举源码分析

    Zookeeper源码下载地址:https://github.com/apache/zookeeper 1.选举流程 Zookeeeper的Leader选举会分两个过程. 服务启动时的leader选举 ...

最新文章

  1. zookeeper集群启动报错:Cannot open channel to * at election address /ip:3888
  2. RDKit | 基于RDKit绘制黑白颜色的分子
  3. Oracle存储过程中异常Exception的捕捉和处理
  4. python merge很费内存吗,python如何使用merge实现堆
  5. leetcode 高薪_LeetCode刷题实战69:x 的平方根
  6. 在SAP Data Intelligence Modeler里测试data Generator graph
  7. [C#.NET 拾遗补漏]07:迭代器和列举器
  8. 蓝桥杯 PREV-27 历届试题 蚂蚁感冒
  9. 如何安装Exchange2010上安装更新汇总(Update Rollup)
  10. 记录:成功配置 centos + nginx + .net core 2.0
  11. 五年50起并购、股价持续上扬,复盘IBM的物联网进化之路
  12. OSChina 周五乱弹 ——妹子一不小心就被拖到小巷子里
  13. python时间序列平稳性检验_Python量化投资基础:时间序列的平稳性检验
  14. “向美好女人致敬”粉红丝带主题活动,谈水果养生之道
  15. facebook、twitter、facebook登录、whatsapp分享、微信分享
  16. 趁年轻要学会打破思维
  17. UE4 AndroidSDK配置
  18. GCC 编译 C(C++)静态链接库(gcc -L、gcc -l)和动态链接库(gcc -fPIC -shared)的创建和使用
  19. jQuery——简洁的javaScript库
  20. 前端vue导出Excel(多sheet)

热门文章

  1. SQL Server导入导出工具弱爆了
  2. Git 提交规范-Java程序员收藏必备
  3. 错误/异常:java.io.FileNotFoundException: .\src\db.properties (系统找不到指定的路径。);的解决方法...
  4. Bless You Autocorrect!
  5. lua IDE all
  6. 人生,不过是停下在走
  7. django-web聊天
  8. Win10 通过升级安装完成后出现了中文字体忽大忽小的问题解决。
  9. crawler_JVM_DNS_在爬虫中的应用
  10. Jdom的SAXBuilder解析String形式的XML