Zookeeper
Zookeeper
特点
Apache ZooKeeper致力于开发和维护开源服务器,以实现高度可靠的分布式协调。
- ZooKeeper是一项集中式服务,用于维护配置信息、命名、提供分布式同步和提供组服务。所有这些类型的服务都以某种形式由分布式应用程序使用;
- ZooKeeper 的实施非常重视高性能、高可用性、严格有序的访问。ZooKeeper 的性能方面意味着它可以在大型分布式系统中使用。
- ZooKeeper 允许分布式进程通过共享的分层命名空间相互协调,旨在通过一组称为集合体的主机进行复制。
组成 ZooKeeper 服务的服务器必须相互了解。它们在持久性存储中维护状态的内存映像,以及事务日志和快照。只要大多数服务器可用,ZooKeeper 服务就可用。
运行逻辑
客户端连接到单个 ZooKeeper 服务器。客户端维护 TCP 连接,通过该连接发送请求、获取响应、获取监视事件并发送心跳。如果与服务器的 TCP 连接中断,客户端将连接到其他服务器。
数据模型和分层命名空间
ZooKeeper 提供的命名空间与标准文件系统的命名空间非常相似。名称是由斜杠 (/) 分隔的路径元素序列。ZooKeeper 命名空间中的每个节点都由一个路径标识。
ZooKeeper 的分层命名空间