更多的,看到一个动物园管理员的官方网Zookper分布式应用协同服务:

zookper是分布式的,开源的,分布式应用的协同服务,它提供了一些简单的操作,使分布式应用程序实现等服务的同步、配置维护和多样性组或命名服务基于这些接口。Zookper易程序的访问,并使用一个数据模型类似于java文件树结构。或C可编程访问。

众所周知,分布式系统的协作服务难有满意的产品。这些协同服务产品容易陷入一些误区如竞争性选拔条件或死锁,zookper的目的是使分布式服务协作服务,不再需要因为合作冲突的设计目标是简单的动物园。

动物园管理员使分布式过程一起工作,通过一系列的命名空间的文件系统非常相似。这些命名空间是由一系列的数据寄存器,并把这些数据寄存器是znodes。这些znodes有点像文件系统中的文件和文件夹。不同的文件系统,该文件系统的文件存储在存储区,和管理员数据存储在内存中。同时,这意味着管理员具有高吞吐量和低延迟。

ZooKeeper实现高性能、高可靠性、高性能和有序的访问,使管理员可以应用于大型分布式系统,高可靠性保证它不会引起任何问题,因为一个单节点故障。有序的访问可以确保客户端可以实现更复杂的同步操作管理员是可重用的。

ZooKeeper服务



组成ZooKeeper各种服务器必须能够互相沟通。他们保存服务器状态的记忆,保存操作日志,并坚持快照。只要大多数服务器可用,ZooKeeper是可用的。

客户端连接到ZooKeeper服务器和维护一个TCP连接,发送一个请求,得到回复,得到一个事件,并发送一个连接信号。如果TCP连接断开,客户端可以连接到另一个服务器管理员命令。

管理员使用数字来标记每个更新。这保证了ZooKeeper交往秩序。后续操作可以达到更高、更抽象的服务如订单管理员是有效的同步操作。

动物园管理员在阅读为基础的系统更有效。管理员可以在约10:1的分布式系统表现良好,数千台服务器组成的空间数据结构和层次。

对管理员的命名空间的结构和文件系统非常相似。一名和文件路径的表示,每个节点的管理员是唯一确定的路径

动物园管理员的层次命名空间

实现

下图显示了ZooKeeper服务的先进的组件服务。除了请求处理器,每个服务器的管理员服务器组份各自组件。

动物园管理员组成



复制数据库是一种结构,它包含内存中的整个数据树,所有更新操作都记录到硬盘上,在数据库中工作时,写入操作被序列化到硬盘上。

每个ZooKeeper服务器连接到多个客户端,客户端连接到服务器提交一个请求。