上周有人和我说,有篇讲怎么调zk API的水文都上了csdn首页,我表示相当无奈,毕竟大多数人看一门技术就是想知道怎么调API,很少有人去了解内部机制。而懂不懂原理,恰恰是码农和架构师的最大区别。我肯定也会讲API,不过是下下篇的内容,最近仍然要讲原理。
这次说的是ZooKeeper的三种角色,也就是ZooKeeper服务器的三种节点类型(需要区分这里的“节点”和名字空间的“节点”,完全不是同一个意思,曾经有一家公司的面试官问我zk里有几种节点,结果被我反问了,场面相当尴尬):群首(leader),追随者(follower),观察者(observer)。
Leader
Leader作为整个ZooKeeper