1. 程式人生 > >01.zookeeper介紹 (中級Java程序員必備技能一)

01.zookeeper介紹 (中級Java程序員必備技能一)

分布式 是什麽 必備 數據 執行 roo 分布 分布式協調 很多

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]

01.zookeeper介紹 (中級Java程序員必備技能一)