Zookeeper概述、特點、數據模型

Zookeeper
1.Zookeeper概述
Zookeeper是一個工具,可以實現集羣中的分佈式協調服務。
所謂的分佈式協調服務,就是在集羣的節點中進行可靠的消息傳遞,來協調集羣的工作。
 
Zookeeper之所以能夠實現分佈式協調服務,靠的就是它能夠保證分佈式數據一致性。
所謂的分佈式數據一致性,指的就是可以在集羣中保證數據傳遞的一致性。
 
Zookeeper能夠提供的分佈式協調服務包括:數據發佈訂閱、負載均衡、命名服務、分佈式協調/通知、集羣管理、分佈式鎖、分佈式隊列等功能
 
2.Zookeeper的特點
Zookeeper工作在集羣中,對集羣提供分佈式協調服務,它提供的分佈式協調服務具有如下的特點:
順序一致性
從同一個客戶端發起的事務請求,最終將會嚴格按照其發起順序被應用到zookeeper中
原子性
所有事物請求的處理結果在整個集羣中所有機器上的應用情況是一致的,即,要麼整個集羣中所有機器都成功應用了某一事務,要麼都沒有應用,一定不會出現集羣中部分機器應用了改事務,另外一部分沒有應用的情況。
單一視圖
無論客戶端連接的是哪個zookeeper服務器,其看到的服務端數據模型都是一致的。
可靠性
一旦服務端成功的應用了一個事務,並完成對客戶端的響應,那麼該事務所引起的服務端狀態變更將會一直保留下來,除非有另一個事務又對其進行了改變。
實時性
zookeeper並不是一種強一致性,只能保證順序一致性和最終一致性,只能稱爲達到了僞實時性。
 
3.zookeeper的數據模型
zookeepei中可以保存數據,正是利用zookeeper可以保存數據這一特點,我們的集羣通過在zookeeper裏存取數據來進行消息的傳遞。
zookeeper中保存數據的結構非常類似於文件系統。都是由節點組成的樹形結構。不同的是文件系統是由文件夾和文件來組成的樹,而zookeeper中是由ZNODE來組成的樹。
每一個ZNODE裏都可以存放一段數據,ZNODE下還可以掛載零個或多個子ZNODE節點,從而組成一個樹形結構。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章