可能是東半球最清楚的 ZooKeeper 實戰文章

運維之美2019-08-30 11:03:14



ZooKeeper 是一個開源的分佈式協調服務系統
,已有十多年的歷史,在業界的應用非常廣泛,包括雅虎、eBay、京東、騰訊、餓了麼、美團等公司。雖然近幾年有 Consul 和 etcd 這些新的分佈式協調系統問世,但 ZooKeeper 依然是最主流的分佈式協調服務系統。

 

不得不説,ZooKeeper 是一個設計非常優雅和成功的軟件系統。它的設計者們似乎從十多年前就想清楚了所有的需求場景,以至於這麼多年過去了,ZooKeeper 的對外 API 基本上沒有太多改變,而ZooKeeper 的應用範圍卻變得越來越廣泛。

 

這得益於 ZooKeeper 獨特的軟件設計和功能特性:

  1. 安裝配置簡單,運維人員可以很快上手;

  2. 核心API非常簡單,只要使用其中6個方法就可以實現大部分協同服務的研發;

  3. ZooKeeper有豐富的生態圈,網上有很多的ZooKeeper第三方工具和相關資料;

  4. 支持線性擴展,系統擴容就是簡單的添加節點,而且可以在不中斷服務的前提下進行。 


雖然大多數技術人都可以很快上手 ZooKeeper,但大都侷限於基於現有的 ZooKeeper 協同服務示例做一些簡單的定製。如果想要具備為自己的業務場景設計 ZooKeeper 協同服務應用的能力,就需要深刻理解 ZooKeeper 的內部工作原理,還要做大量的協同服務設計練習。
 
理解 ZooKeeper 的內部工作原理,需要學習大量的計算機理論知識。這些理論知識涉及分佈式系統、數據庫系統和操作系統,而找到並學習這些知識點需要耗費很多時間。
 
説到這裏,要給你推薦極客時間新上的視頻課《ZooKeeper 實戰與源碼剖析》,這門課程最大的亮點,是會深入核心代碼,深度剖析 ZooKeeper 的內部原理。除此之外,還會帶你進行大量的實戰演練,比如與 Kafka 結合進行相應的開發實戰。另外,也會帶你上手 etcd。
 
相信學完這門課,你能夠在工作中對 ZooKeeper 進行個性化的定製與使用,並熟練解決開發中遇到的各種難題,積累使用 Java 研發系統級軟件的實戰經驗。
 
課程講師是新東方集團首席架構師麼敬國。他目前在新東方負責直播雲、出國留學考試和樂詞矩陣的架構和管理工作。曾經在 IBM 做分式數據存儲和流程引擎的研發、大數據查詢語言的設計和研發,也在天涯社區負責過大數據平台的研發。還利用業餘時間參與了分佈式數據庫系統 CockroachDB 的研發。可以説是個當之無愧的研發“老兵”。
 
跟着他學,你一定可以少走彎路,更高效地掌握ZooKeeper。

你能獲得什麼?

在《ZooKeeper 實戰與源碼剖析》視頻課中,會先介紹 ZooKeeper 的基礎知識,並結合代碼講實戰性的例子,也會介紹一些分佈式系統的基本概念。在高階部分,會以講解 ZooKeeper 內部原理和相關源代碼為主,從而讓你以更廣的視角來看待 ZooKeeper。
 
通過學習這門課程,你可以深入理解 ZooKeeper 內部的運行機制,掌握如何更有效地使用ZooKeeper,並掌握以下分佈式系統的經典設計理念:

  1. 如何設計一個本地數據節點。
  2. 分佈式環境中節點之間如何通信。
  3. 如何從 0 到1設計一個 RPC 子系統。
  4. 如何使用數據一致性協議保證數據的高可用。
  5. 如何在數據一致性和系統性能之間做取捨。
 
以上這些理念基本上每個分佈式系統中都有涉及。掌握這些設計理念可以讓你更容易地理解類似的系統,也可以在自己的研發工作中應用這些設計理念。
 


如何訂閲
掃描下面海報二維碼,以 74 元讀者福利價訂閲。


△ 掃碼試讀或訂閲
限時訂閲福利
  1. 首先戳「這裏」免費領取「極客時間 199 元限時優惠大禮包」。

  2. 其次在結算時使用「極客時間 199 元限時優惠大禮包」中的優惠券再減 25 元。

  3. 最終以讀者優惠價 74 元訂閲該專欄

  4. 分享專屬海報,邀請好友訂閲即可再獲得 24 返現,多邀多得,上不封頂。


你可能還喜歡

點擊下方圖片即可閲讀

歡迎加入「運維之美」技術交流微信羣



點擊「閲讀原文」,試看或訂閲專欄👇

https://hk.wxwenku.com/d/201266292