01.zookeeper介绍 (中级Java程序员必备技能一)

1.zookeeper是什么?

zookeeper是一个开源的分布式协调服务,是google的chubby一个开源的实现。是Hadoop和Hbase的重要组件。

2.zookeeper能做什么?

分布式数据一致性的解决方案
数据的发布与订阅、负载均衡、命名服务、master选举、分布式队列、分布式锁。

3.zookeeper的特性

  • 顺序一致性
    从同一个客户端发起的事务请求,最终会严格按照顺序被应用到zookeeper中
  • 可靠性
    服务器成功应用了某一个事务数据,并且对客户端做了响应,那么这个数据在整个集群一定是同步并且保留下来的
  • 原子性
    从同一个客户端发起的事务请求,最终会严格按照顺序被应用到zookeeper中
  • 实时性
    一旦一个事务被成功应用,客户端就能够立即从服务器端读取到事务变更后的最新数据状态;

4.ZooKeeper的基本运转流程:

  1. 选举Leader。
  2. 同步数据。
  3. 选举Leader过程中算法有很多,但要达到的选举标准是一致的。
  4. Leader要具有最高的执行ID,类似root权限。
  5. 集群中大多数的机器得到响应并接受选出的Leader。 [3]

猜你喜欢

转载自blog.51cto.com/12133258/2176236