
Zookeeper源码阅读
Thpffcj
这个作者很懒,什么都没留下…
展开
-
Zookeeper源码学习(四):请求处理和数据与存储
目录1. 请求处理1. 会话创建请求2. SetData请求3. 事务请求转发4. GetData请求2. 数据与存储1. 内存数据2. 事务日志3. snapshot-数据快照4. 初始化5. 数据同步最后 1. 请求处理 1. 会话创建请求 Zookeeper服务端对于会话创建的处理,大体可以分为请求接收,会话创建,预处理,事务处理,事务应用和会话响应6大环节。 请求接收 I/O层接收来...原创 2020-05-04 09:54:50 · 528 阅读 · 0 评论 -
Zookeeper源码学习(三):Leader选举和各服务器角色介绍
目录1. Leader选举1. Leader选举概述2. Leader选举的算法分析3. Leader选举的实现细节2. 各服务器角色介绍1. Leader2. Follower3. Observer4. 集群间消息通信最后 1. Leader选举 1. Leader选举概述 服务器启动时期的Leader选举 每个Server发出一个投票。由于是初始情况,Server1和Server2都会将自己...原创 2020-05-04 09:12:13 · 320 阅读 · 0 评论 -
Zookeeper源码学习(二):客户端,会话和服务器启动
目录1. 客户端1. 一次会话的创建过程2. 服务器地址列表3. ClientCnxn:网络I/O2. 会话1. 会话状态2. 会话创建3. 会话管理4. 会话清理5. 重连3. 服务器启动1. 单机版服务器启动2. 集群版服务器启动最后 1. 客户端 Zookeeper:客户端的入口。 ClientWatchManager:客户端watcher管理器。 HostProvider:客户端地址列表...原创 2020-05-03 20:11:01 · 674 阅读 · 0 评论 -
Zookeeper源码学习(一):系统模型,序列化与协议
假期闲来无事,记录下前段时间阅读 Zookeeper 源码的一些笔记,主要参考了《从Paxos到Zookeeper》这本书和一些博客,从高层看了一些代码,详细阅读以后有时间会继续学习总结。 1. 系统模型 1. 数据模型 Znode是Zookeeper中数据的最小单元。 ZK的数据结构模型是基于ZNode的树状模型。在ZK内部通过类似内存数据库的方式保存了整棵树的内容,并定时写入磁盘。 ZK的内...原创 2020-05-03 17:24:12 · 311 阅读 · 0 评论