1.Leader
Leader服务器是整个Zookeeper集群工作机制中的核心,它是通过选举产生的集群领导者,提供读写服务;一个Zookeeper集群中同一时间只能有一个实际工作的Leader,它用来维护各个follow与observer之间的心跳。Leader是事务请求的唯一调度和处理者,follow接收到事务请求会将请求转发给Leader处理。
2.Follow
Follow只提供读服务,即只处理非事务请求,它接收到事务请求会转发给Leader服务器。它参与Leader的选举,参与事务请求Proposal的投票。一个Zookeeper集群同时可以有多个Follow。
3.Observer
提供读服务,即只处理非事务请求。Observer的功能和Follow基本一致,唯一的差别是不参与任何投票,包括事务请求Proposal和Leader的选举。Observer的作用主要就是在不影响集群事务处理前提下提升集群的非事务处理。
注明:Zookeeper更适合以查询(非事务)为主的操作,不适合以写(事务)为主的操作,因为只有一个Leader,但有多个Follow。