zk集群的三类角色

为了避免 Zookeeper 的单点问题,zk 也是以集群的形式出现的。zk 集群中的角色主要有
以下三类:

  • Leader:事务请求的唯一处理者,也可以处理读请求。
  • Follower:可以直接处理客户端的读请求,并向客户端响应;但其不会处理事务请求,其只会将客户端事务请求转发给Leader来处理;对Leader发起的事务提案具有表决权;同步 Leader 中的事务处理结果;Leader 选举过程的参与者,具有选举权与被选举权。(就好像正式工)
  • Observer:可以理解为不参与 Leader 选举的 Follower,在 Leader 选举过程中没有选举权
    与被选举权;同时,对于 Leader 的提案没有表决权。用于协助 Follower 处理更多的客
    户端读请求。Observer 的增加,会提高集群读请求处理的吞吐量,但不会增加事务请求
    的通过压力,不会增加 Leader 选举的压力。(就好像临时工)

三种角色在不同的情况下又有一些不同的名称

  • Learner:学习者,即要从 Leader 中同步数据的 Server,即 Follower 与 Observer。Learner = Follower + Observer
  • QuorumServer:QuorumPeer,Participant,法定服务器,法定主机,参与者。在集群正
    常服务状态下,具有表决权的服务器称为 QuorumServer,或 QuorumPeer;在 Leader
    选举过程中,具有选举权与被选举权的服务器,称为 Participant。
    QuorumServer = Leader + Follower = Participant
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章