zookeeper 标签

ZooKeeper源码分析(四) - Leader选举 有更新!

  |   0 评论   |   0 浏览

前面几篇文章讲了服务器启动的流程,对于选举过程是一笔带过,这篇文章主要讲述Leader选举的实现细节。

Leader 选举是ZooKeeper中最重要的技术之一,也是保证分布式数据一致性的关键所在。我们从选举算法概述、服务器启动Leader选举、服务器运行期间Leader选举三个方面探讨实现细节。

ZooKeeper源码分析(三)—服务端启动之单机模式 有更新!

  |   0 评论   |   0 浏览

单机模式是一种特殊的集群模式。
在开发测试环境不需要服务有很高的稳定性,进行集群部署存在浪费,所以zk提供了单机模式的部署方式
单机模式的配置文件

tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
initLimit=5
SyncLimit=2
server.1=IP1:2181:3888

单机模式启动时,Mode显示为 standalone

ZooKeeper源码分析(二)—服务端启动之集群模式 有更新!

  |   0 评论   |   0 浏览

ZooKeeper服务端启动入口在 QuorumPeerMain这个类中,主要逻辑在 initializeAndRun方法中。主要逻辑为:

  • 解析zk配置(console 是否输入了配置文件名称)
  • 启动负责清理工作的schedule(利用Java Timer实现的定时任务,清理过期文件快照)
  • 启动过程(根据配置信息判断走集群模式还是单机模式)