Curator-Framework開源Zookeeper快速開發框架介紹


Zookeeper 客戶端框架 Curator-Framework 來自Netflix公司,現在歸Apache,目前版本2.0.1!

在使用ZK開發時會遇到讓人頭疼的幾個問題,ZK連接管理、SESSION失效等一些異常問題的處理,Curator替我們解決了這些問題,通過對ZK連接狀態的監控來做出相應的重連等操作,並觸發事件!

更好的地方是Curator對ZK的一些應用場景提供了非常好的實現,而且有很多擴充,這些都符合ZK使用規范。

主要組件

  1. Recipes, ZooKeeper的系列recipe實現, 基於 Curator Framework.
  2. Framework, 封裝了大量ZooKeeper常用API操作,降低了使用難度, 基於Zookeeper增加了一些新特性,對ZooKeeper鏈接的管理,對鏈接丟失自動重新鏈接。
  3. Utilities,一些ZooKeeper操作的工具類包括ZK的集群測試工具路徑生成等非常有用,在Curator-Client包下org.apache.curator.utils。
  4. Client,ZooKeeper的客戶端API封裝,替代官方 ZooKeeper class,解決了一些繁瑣低級的處理,提供一些工具類。
  5. Errors,異常處理, 連接異常等
  6. Extensions,對curator-recipes的擴展實現,拆分為curator-x-discovery和curator-x-discovery-server提供基於RESTful的Recipes WEB服務.

其中Curator-Recipes包括有Elections(領導選舉)、Locks(鎖)、Queues(隊列)、Barriers(屏障)、Counters(共享計數器)、Caches(狀態管理,可用做配置管理、緩存等)

實踐

官方提供學習實例curator-examples,可通過Maven下載,curator系列Maven地址 maven:org.apache.curator

本人基於Curator做幾個常用場景的開發實例以供大家參考

  1. 配置管理 http://www.cnblogs.com/xguo/archive/2013/06/10/3130589.html
  2. 分布式隊列處理 http://www.cnblogs.com/xguo/archive/2013/06/15/3137948.html


免責聲明!

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



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