Zookeeper源码分析(1)- Zookeeper的启动流程
来源:互联网 发布:2010年湖人季后赛数据 编辑:程序博客网 时间:2024/05/16 23:42
- zookeeper的主类是QuorumPeerMain,启动时读取zoo.cfg配置文件,如果没有配置server列表,则单机模式启动,否则按集群模式启动,这里只分析集群模式
- 根据配置初始化quorumPeer对象,并启动quorumPeer线程,这里主要做了几件事情
- 读取保存在磁盘上的数据,包括db的snapshot和txnlog,zookeeper的存储结构另外专门讲述
- 启动cnxnFactory,这里主要是启动一个server,用来接收来自client的请求,绑定在配置文件中的clientPort端口
- 在QuorumAddress上绑定一个server,用来和其他zookeeper server做交互
- 启动leader选举过程,因为server刚启动时是存在LOOKING状态,需要发一起一次选举过程来获取leader,选举过程另外专门讲述
- 启动quorumPeer的主线程run,根据当前节点的状态来启动不同的流程
- 如果是Looking状态,则调用FastLeaderElection::lookForLeader来发起选举流程
- 如果是OBSERVING状态,则开始Observer流程
- 如果是FOLLOWING状态,则开始Follower流程,另外专门讲述
- 如果是LEADING状态,则开始Leader流程,另外专门讲述
0 0
- Zookeeper源码分析(1)- Zookeeper的启动流程
- Zookeeper源码分析(2)- zookeeper的选举流程
- Zookeeper源码分析(五)-Zookeeper选举实例流程
- Zookeeper的启动流程
- Zookeeper源码分析(一)-Zookeeper启动过程
- ZooKeeper源码分析:Quorum请求的整个流程
- Zookeeper源码分析(3)- Leader执行流程
- Zookeeper源码分析(4)- Follower执行流程
- zookeeper源码分析----节点创建流程
- Giraph源码分析(一) —— 启动ZooKeeper服务
- zookeeper源码分析之一启动过程
- Zookeeper源码分析之一Server启动
- Zookeeper学习(十二):Zookeeper启动异常-无法启动的分析(It is probably not running)
- 源码分析(1)ZooKeeper源码环境搭建
- ZooKeeper 启动过程分析
- jstorm源码分析: zookeeper
- ZooKeeper源码分析
- Zookeeper客户端源码分析
- Ubuntu安装eclipse
- nginx和tomcat的简单整合
- EF的增删改查
- erlang字符串操作
- 并查集
- Zookeeper源码分析(1)- Zookeeper的启动流程
- 使用 Eclipse Memory Analyzer 进行堆转储文件分析
- uuid生成网站
- div垂直居中 css div盒子上下垂直居中
- android图片处理
- Errors occurred during the build.
- I2C总线的仲裁机制
- select case用法
- 安卓中颜色的设置