Zookeeper
介绍 ZooKeeper官网 ZooKeeper 分布式协调服务(提供分布式锁),是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件 zookeeper开源客户端curator 基本概念 Paxos协议 ZooKeeper特点 最终一致性:为客户端展示同一个视图 实时性:系统的客户视图保证在特定时间范围内是最新的。zookeeper不能保证两个客户端能同时得到刚更新的数据,如果需要最新数据,应该在读数据之前调用sync()接口 顺序性:客户端的更新将按发送顺序应用 统一视图:无论客户端连接到哪个服务器,客户端都将看到相同的服务视图(临时节点数据也可见) 可靠性:如果消息被一台服务器接受,那么它将被所有的服务器接受(且被持久化) 原子性:更新只能成功或者失败,没有中间状态 独立性:各个Client之间互不干预 ZooKeeper工作原理 每个Server在内存中存储一份数据(有的会存在磁盘) zookeeper启动时,将从实例中选举一个leader(Paxos协议) Leader负责处理数据更新等操作 一个更新操作成功的标志是当且仅当大多数Server在内存中成功修改数据 ZooKeeper可能出现可用和不可用两种状态 当Leader挂掉后,集群短 ...