概述
Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目。
特点
Zookeeper:一个领导者(leader),多个跟随者(follower)组成的集群
集群中只要有半数以上的节点存活,Zookeeper集群就能正常服务
全局数据一致:每个Server保存一份相同的数据副本,Client无论连接到那个Server,数据都是一致的
更新请求顺序进行,来自同一个Client的更新请求按其发送顺序依次执行
数据更新原子性,一次数据更新要么成功,要么失败
实时性,在一定时间范围内,Client能读到最新数据
数据结构
Zookeeper数据模型的结构于Unix系统文件类似,整体上可以看成是一棵树,每个节点称作一个ZNode。每个ZNode默认只能存储1MB的数据,每个ZNode都可以通过其路径得到唯一标识。
应用场景
提供的服务包括:统一命名服务,统一配置管理,统一集群管理,服务器节点动态上下线,软负载均衡等。