Zookeeper是一个分布式的, 开放源码的分布式应用程序的协调服务组件,是谷歌和Chubby一个开源的实现,是Hadoop和Hbase的重要组件, 他是一个为分布式应用提供一致性服务的软件,提供的功能包括: 配置维护,域名服务,分布式同步,租服务等.
简述: 所有的主机信息或者你需要的服务信息都依托在Zookeeper保存.
Zookeeper:严格来讲是根据节点的层级关系来进行数据处理的,在Zookeeper中最大的节点是 ” / ” ,在其下有无数的子孙节点.
Zookeeper中保存的信息限制在1M 以内, 而实际应用中,对于保存在Zk中的数据一般:如服务器地址,端口号,接口名等等,这些信息量并不是很大,几KB就解决了.(注: 别没事存中文.)
Zookeeper的特点 :
- 顺序一致性 : 按照客户端发送的请求顺序来更新数据.
- 原子性 : 要么全部成功,要么全部失败 .
- 单一性 : 无论客户端连接哪一个Server, 视图都是相同的.
- 可靠性 : 一旦数据成功,将一直保持 ,直到新的更新.
- 及时性 : 客户端会在一个确定的时间内得到最新的数据 .
Paxos算法:
本质: 在一个信任的环境下,推选领导进行所有的Zookeeper节点操作.