
Leader
集群中同一时间只有一个 Leader。所有写操作必须要通过 Leader 完成,由 Leader 将写操作广播给 Follower
Follower
集群中可以存在多个 Follower,可直接处理并返回客户端的读请求,同时会将写请求转发给 Leader 处理,并且负责在 Leader 处理写请求时对请求进行投票
Observer
功能与 Follower 类似,但无投票权
服务器状态
Leading
领导者状态,表明当前服务器角色是 Leader
Following
跟随者专题,表明当前服务器角色是 Follower
Observing
观察者状态,表明当前服务器角色是 Observer
Looking
寻找 Leader 状态,当服务器处于该状态时,它会认为当前集群中没有 Leader,一次会进入 Leader 选举状态
投票信息
选举状态 ZabState
election 选举
discovery 发现
synchronization 同步
broadcast 广播

Zookeeper集群中,选举是核心功能之一。本文详细介绍了选举流程,包括Leader、Follower和Observer的角色,服务器的四种状态以及选举的规则和终止条件。在选举过程中,节点通过比较Epoch、Zxid和Sid来决定领导者。当达到一半以上节点的共识时,选举结束。此外,还探讨了选举中的票箱信息、选票内容和不同场景,最后对源码进行了简单说明。
最低0.47元/天 解锁文章
583

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



