]9.zookeeper原理解析-选举之QuorumPeerMain加载
2015-06-18 11:23
447 查看
]9.zookeeper原理解析-选举之QuorumPeerMain加载
=====================================斩秋|http://blog.csdn.net/quhongwei_zhanqiu=======================================
Zookeeper集群启动的入口类是QuorumPeerMain来加载配置启动QuorumPeer线程。首先我们来看下QuorumPeer, 谷歌翻译quorum是法定人数,定额的意思, peer是对等的意思,那么QuorumPeer中quorum代表的意思就是每个zookeeper集群启动的时候集群中zookeeper服务数量就已经确定了,在每个zookeeper的配置文件中配置集群中的所有机器
server.1=127.0.0.1:2886:3886
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2888:3888
事实上着也确定zookeeper在运行中是不能动态扩容的,必须停下服务修改配置才可以;QuorumPeer中peer代表就是集中每个zookeeper角色是对等的没有主从之分,每个zookeeper服务都可以成为leader, follower,observer。
1. QuorumPeerMain加载
1) QuorumPeerConfig读取配置文件,如下面的zoo.cfg文件
tickTime=2000
initLimit=10
syncLimit=5
dataDir=D:/workspace_zookeeper/data1
clientPort=2181
server.1=127.0.0.1:2886:3886
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2888:3888
如上配置中每个server.X记录代表集群中的一个服务,QuorumPeerConfig会构建一个QuorumServer对象,其中的server.X中的X代表zookpeer的sid,每个zookeeper都会编辑自己的sid在dataDir目下的myid文件中,sid标记每个服务,在快速选举中起作用
server.X后值代表zookeeper服务地址ip以及选举其中zookeeper之间连接的端口
2)启动定时清理服务任务DatadirCleanupManager.start() 用来清除过期的txtLog和snapshot文件
3)构建QuorumPeer任务对象
3.1)设置供客户端连接的端口地址
3.2)设置txtLog和snapshot的操作对象FileTxnSnaplog
3.3)设置本Zookeeper的myid(sid)
3.4)设置客户端连接工厂
3.5)设置选举算法
3.6)各种时间设置等等
4)QuorumPeer.start()启动任务线程 阅读更多
=====================================斩秋|http://blog.csdn.net/quhongwei_zhanqiu=======================================
Zookeeper集群启动的入口类是QuorumPeerMain来加载配置启动QuorumPeer线程。首先我们来看下QuorumPeer, 谷歌翻译quorum是法定人数,定额的意思, peer是对等的意思,那么QuorumPeer中quorum代表的意思就是每个zookeeper集群启动的时候集群中zookeeper服务数量就已经确定了,在每个zookeeper的配置文件中配置集群中的所有机器
server.1=127.0.0.1:2886:3886
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2888:3888
事实上着也确定zookeeper在运行中是不能动态扩容的,必须停下服务修改配置才可以;QuorumPeer中peer代表就是集中每个zookeeper角色是对等的没有主从之分,每个zookeeper服务都可以成为leader, follower,observer。
1. QuorumPeerMain加载
1) QuorumPeerConfig读取配置文件,如下面的zoo.cfg文件
tickTime=2000
initLimit=10
syncLimit=5
dataDir=D:/workspace_zookeeper/data1
clientPort=2181
server.1=127.0.0.1:2886:3886
server.2=127.0.0.1:2887:3887
server.3=127.0.0.1:2888:3888
如上配置中每个server.X记录代表集群中的一个服务,QuorumPeerConfig会构建一个QuorumServer对象,其中的server.X中的X代表zookpeer的sid,每个zookeeper都会编辑自己的sid在dataDir目下的myid文件中,sid标记每个服务,在快速选举中起作用
server.X后值代表zookeeper服务地址ip以及选举其中zookeeper之间连接的端口
2)启动定时清理服务任务DatadirCleanupManager.start() 用来清除过期的txtLog和snapshot文件
3)构建QuorumPeer任务对象
3.1)设置供客户端连接的端口地址
3.2)设置txtLog和snapshot的操作对象FileTxnSnaplog
3.3)设置本Zookeeper的myid(sid)
3.4)设置客户端连接工厂
3.5)设置选举算法
3.6)各种时间设置等等
4)QuorumPeer.start()启动任务线程 阅读更多
相关文章推荐
- 9.zookeeper原理解析-选举之QuorumPeerMain加载
- zookeeper 配置启动报错(org.apache.zookeeper.server.quorum.QuorumPeerMain)
- Zookeeper系列(二十三)Zookeeper原理解析之选举流程
- zookeeper原理解析-选举
- Zookeeper启动之QuorumPeerMain
- zookeeper原理解析-选举
- Zookeeper系列(十六)Zookeeper原理解析之选举之选举流程
- Java类加载原理解析
- Java类加载原理解析
- PHP自动加载功能原理解析
- Kafka源码深度解析-序列10 -Server入门-Zookeeper与集群管理原理
- zookeeper原理解析-数据存储
- ZooKeeper 工作、选举 原理
- Java类加载原理解析
- 老调重弹:JDBC系列 之 <驱动加载原理全面解析>
- Zookeeper系列(十八)Zookeeper原理解析之数据存储之TxnLog事务日志
- Zookeeper系列(二十二)Zookeeper原理解析之序列化之底层通信数据封装与操作和Record接口
- Java类加载原理解析
- ZooKeeper学习之路 (八)ZooKeeper原理解析
- 下拉刷新、上拉加载更多控件实现原理及解析(二)