一、什么是Zookeeper?
ZooKeeper致力于提供一个高性能、高可用,且具备严格的顺序访问控制能力的分布式协调服务,是雅虎公司创建,是Google的Chubby一个开源的实现,也是Hadoop和Hbase的重要组件。
二、Zookeeper的设计目标
简单的数据结构:zk提供了一个树形结构的数据存储结构,类似于文件系统,存储于内存;
可以构建集群:为避免单点故障,3台以上的机器就可以组成集群,超过半数正常工作,就能对外提供服务。
顺序访问:对于每个请求,zk会分配一个全局唯一的递增序号,利用此特定可以实现高级协调服务。
高性能:基于内存操作,服务于非事务请求,适用于读操作为主的业务场景。3台规模的集群能达到13W QPS。
三、Zookeeper适用场景
- 数据发布订阅
- 负载均衡
- 命名服务
- Master选举
- 集群管理
- 配置管理
- 分布式队列
- 分布式锁