1. 服务端整体架构图

Zookeeper服务器的启动,大致可以分为以下五个步骤
配置文件解析初始化数据管理器初始化网络 I/O 管理器数据恢复对外服务
2. 单机版服务器启动
单机版服务器的启动其流程图如下

上图的过程可以分为预启动和初始化过程。
2.1 预启动
- 统一由 QuorumPeerMain 作为启动类。无论单机或集群,在 zkserver.cmd 和 zkServer.sh 中都配置了QuorumPeerMain 作为启动入口类。
- 解析配置文件 zoo.cfg。zoo.cfg配置运行时的基本参数,如 tickTime、dataDir、clientPort等参数。
- 创建并启动历史文件清理器 DatadirCleanupManager。对事务日志和快照数据文件进行定时清理。
- 判断当前是集群模式还是单机模式启动。若是单机模式,则委托给zooKeeperServerMain 进行启动。
- 再次进行配置文件 zoo.cfg 的解析。
- 创建服务器实例 zooKeeperServer。zookeeper 服务器

本文详细介绍了Zookeeper服务器的启动过程,包括单机版和集群版的预启动、初始化等步骤。从解析配置文件、启动历史文件清理器,到判断启动模式、创建服务器实例、进行Leader选举等,深入剖析了Zookeeper服务端的整体架构和工作流程。
最低0.47元/天 解锁文章
2453

被折叠的 条评论
为什么被折叠?



