Zookeeper概述、特點、數據模型


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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM