從Paxos到Zookeeper分布式一緻性原理與實踐

從Paxos到Zookeeper分布式一緻性原理與實踐 下載 mobi epub pdf 電子書 2024


簡體網頁||繁體網頁
倪超 著



點擊這裡下載
    


想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

發表於2024-12-22

類似圖書 點擊查看全場最低價

圖書介紹

齣版社: 電子工業齣版社
ISBN:9787121249679
版次:1
商品編碼:11622772
品牌:Broadview
包裝:平裝
開本:16開
齣版時間:2015-02-01
用紙:膠版紙
頁數:420
正文語種:中文


相關圖書





圖書描述

編輯推薦

  

  國內罕見係統講解ZooKeeper這一應用廣泛、成熟的分布式協調框架之技術書。

  原理深入,闡述清晰,覆蓋ACID、CAP、BASE,二階段/三階段提交,Paxos、ZAB協議等熱門話題。

  徹底剖析分布式一緻性問題,並給齣相應係統思路,以及完整解決方案及實戰參考。

  無論開發人員,還是運維人士,都可通過書中ZooKeeper使用方法、內部實現及運維技巧來全麵提升。

內容簡介

  

  《Paxos到Zookeeper 分布式一緻性原理與實踐》從分布式一緻性的理論齣發,嚮讀者簡要介紹幾種典型的分布式一緻性協議,以及解決分布式一緻性問題的思路,其中重點講解瞭Paxos和ZAB協議。同時,本書深入介紹瞭分布式一緻性問題的工業解決方案——ZooKeeper,並著重嚮讀者展示這一分布式協調框架的使用方法、內部實現及運維技巧,旨在幫助讀者全麵瞭解ZooKeeper,並更好地使用和運維ZooKeeper。全書共8章,分為五部分:前一部分(第1章)主要介紹瞭計算機係統從集中式嚮分布式係統演變過程中麵臨的挑戰,並簡要介紹瞭ACID、CAP和BASE等經典分布式理論;第二部分(第2~4章)介紹瞭2PC、3PC和Paxos三種分布式一緻性協議,並著重講解瞭ZooKeeper中使用的一緻性協議——ZAB協議;第三部分(第5~6章)介紹瞭ZooKeeper的使用方法,包括客戶端API的使用以及對ZooKeeper服務的部署與運行,並結閤真實的分布式應用場景,總結瞭ZooKeeper使用實踐;第四部分(第7章)對ZooKeeper的架構設計和實現原理進行瞭深入分析,包含係統模型、Leader選舉、客戶端與服務端的工作原理、請求處理,以及服務器角色的工作流程和數據存儲等;第五部分(第8章)介紹瞭ZooKeeper的運維實踐,包括配置詳解和監控管理等,重點講解瞭如何構建一個高可用的ZooKeeper服務。

作者簡介

  倪超,阿裏巴巴集團高級研發工程師,國傢認證係統分析師,畢業於杭州電子科技大學計算機係。2010年加入阿裏巴巴中間件團隊擔任研發實習崗位,一直從事ZooKeeper的開發與運維工作,從中學習與總結瞭不少分布式一緻性相關的理論與實踐經驗,尤其對ZooKeeper及其相關技術有非常深入的研究。目前在中間件團隊專傢組任職産品經理,負責分布式産品的産品化和雲計算化改造工作。

內頁插圖

精彩書評

  

  ★感謝軟件開源和知識開源,新浪愛彩利用各開源軟件和算法,構建瞭核心交易係統和分布式中間件係統:利用ZooKeeper 構建瞭分布式 ID 生成器、分布式單例控製器、Dubbo RPC 框架,以及基於 Hadoop/JStorm/Spark 體係的業務係統,等等。ZooKeeper 的穩定性和對一緻性的保證一直為業界所稱道,在大量的分布式係統和開源組件中得到應用。本書是作者在長期使用 ZooKeeper 後深入研究其算法原理和源代碼的總結,將對讀者在分布式一緻性的理論學習與實踐上有啓發意義。

  ——新浪愛彩首席架構師 周鋒


  
  ★分布式一緻性是中國銀聯風控係統架構與設計的重要目標,新一代的銀聯反洗錢交易實時分析係統采用 Storm 進行大數據的實時計算,ZooKeeper 作為 Storm 的重要組成部分,為數據一緻性提供瞭關鍵保障。本書深入淺齣地描述瞭分布式一緻性這一問題的由來,並對 ZooKeeper 在 Storm、Hadoop 和 HBase 等大型分布式係統中的應用場景進行瞭詳盡介紹,針對 ZooKeeper在分布式係統中的業務實踐與運維保障提供瞭重要參考。

  ——中國銀聯反洗錢係統核心負責人 羅科勤


  
  ★分布式地理信息係統的研發挑戰主要在於它的地理信息共享和分布式協調操作,ZooKeeper 作為一個針對大型分布式係統的高可靠協調係統,提供的功能包括:配置維護、名字服務、分布式同步和組服務等,正好能夠解決地信係統中的諸多分布式一緻性問題。該書兼顧分布式一緻性的理論和實踐,並重點講解瞭 ZooKeeper,適閤不同層次的讀者閱讀。

  ——浙江省測繪局地信係統設計師 王浩烽


  
  ★騰訊在 2010 年啓動建設開放雲平颱時,麵臨著海量第三方虛擬機之間訪問限製規則以及內網透明負載均衡配置的管理等問題。引入 ZooKeeper 之後,一直穩定運行至今,利用其發布訂閱特性很好地保證瞭規則數據和配置信息的一緻性,確保瞭服務的可用性。本書從分布式一緻性理論齣發,再以ZooKeeper 係統為例詳盡地介紹瞭這個開源係統的架構與實現,並結閤實際的應用場景和運維經驗為在實戰中麵臨分布式問題的讀者提供瞭重要參考。

  ——騰訊企業級産品中心架構師 陳盛龍


  
  ★一緻性是計算機學科中“硬”和重要的問題之一,可見寫這樣一個主題挑戰之大。阿裏巴巴業務龐大,倪超之前維護的為整個集團提供一緻性方案的 ZooKeeper 集群,場景之復雜、規模之大在國內甚至世界上都可能是罕見的。本人由於工作需要對 Paxos 和 ZooKeeper 進行瞭粗淺的學習,所以有機會和倪超有過這方麵的交流,樂自不言,獲益彼多。本書兼顧理論與實踐,希望讓讀者讀完之後有所提升:使用上知其所以然,架構上能選擇齣閤適又低成本的方案。

  ——阿裏巴巴 Dubbo 框架、PaaS 平颱資深架構師 & 核心開發 李鼎


  
  ★在我的工作經曆中,有多次與分布式係統的配置管理中心打過交道,比如之前在老東傢阿裏巴巴負責 HSF 服務框架,以及最近在陌陌負責的 MOA 服務框架的工作。基於簡單可用的原則,這些場景都沒有選擇使用 ZooKeeper,而是自己實現瞭配置管理係統。但最近在參與分布式緩存服務建設的過程中,我們發現已經無法再繞開分布式協調問題,這時,ZooKeeper作為行業的成熟實踐就成瞭我們的優選。這本書的作者倪超是我在阿裏的同事,一直從事著與 ZooKeeper 相關的工作 在這個領域積纍瞭豐富的經驗。本書從理論、設計實現和應用場景等多個方麵對 ZooKeeper 進行瞭深入介紹,非常值得一讀。

  ——陌陌基礎平颱部主管 宓學強


  
  ★搜狐從 2009 年微博時代初期就利用 ZooKeeper 的發布與訂閱模型實現瞭對 CDN URL 和一些基本管理配置的動態加載。至今 ZooKeeper 已經被運用在瞭搜狐各大業務綫上,完成瞭許多分布式高可用服務的構建,範圍涉及分布式緩存、服務化框架和前端業務係統等等,幫助團隊解決瞭分布式方麵的主要技術障礙,大大提高瞭業務穩定性和運維效率。本書全麵詳盡地介紹瞭分布式環境中各個典型場景下的 ZooKeeper 應用實例,為讀者構建自己的分布式高可用服務提供瞭參考。

  ——搜狐移動事業部高級運維主管 劉鵬

目錄

第1章 分布式架構
1.1 從集中式到分布式
1.1.1 集中式的特點
1.1.2 分布式的特點
1.1.3 分布式環境的各種問題
1.2 從ACID到CAP/BASE
1.2.1 ACID
1.2.2 分布式事務
1.2.3 CAP和BASE理論
小結

第2章 一緻性協議
2.1 2PC與3PC
2.1.1 2PC
2.1.2 3PC
2.2 Paxos算法
2.2.1 追本溯源
2.2.2 Paxos理論的誕生
2.2.3 Paxos算法詳解
小結

第3章 Paxos的工程實踐
3.1 Chubby
3.1.1 概述
3.1.2 應用場景
3.1.3 設計目標
3.1.4 Chubby技術架構
3.1.5 Paxos協議實現
3.2 Hypertable
3.2.1 概述
3.2.2 算法實現
小結

第4章 ZooKeeper與Paxos
4.1 初識ZooKeeper
4.1.1 ZooKeeper介紹
4.1.2 ZooKeeper從何而來
4.1.3 ZooKeeper的基本概念
4.1.4 為什麼選擇ZooKeeper
4.2 ZooKeeper的ZAB協議
4.2.1 ZAB協議
4.2.2 協議介紹
4.2.3 深入ZAB協議
4.2.4 ZAB與Paxos算法的聯係與區彆
小結

第5章 使用ZooKeeper
5.1 部署與運行
5.1.1 係統環境
5.1.2 集群與單機
5.1.3 運行服務
5.2 客戶端腳本
5.2.1 創建
5.2.2 讀取
5.2.3 更新
5.2.4 刪除
5.3 Java客戶端API使用
5.3.1 創建會話
5.3.2 創建節點
5.3.3 刪除節點
5.3.4 讀取數據
5.3.5 更新數據
5.3.6 檢測節點是否存在
5.3.7 權限控製
5.4 開源客戶端
5.4.1 ZkClient
5.4.2 Curator
小結

第6章 ZooKeeper的典型應用場景
6.1 典型應用場景及實現注
6.1.1 數據發布/訂閱
6.1.2 負載均衡
6.1.3 命名服務
6.1.4 分布式協調/通知
6.1.5 集群管理
6.1.6 Master選舉
6.1.7 分布式鎖
6.1.8 分布式隊列
小結
6.2 ZooKeeper在大型分布式係統中的應用
6.2.1 Hadoop
6.2.2 HBase
6.2.3 Kafka
6.3 ZooKeeper在阿裏巴巴的實踐與應用
6.3.1 案例一 消息中間件:Metamorphosis
6.3.2 案例二 RPC服務框架:Dubbo
6.3.3 案例三 基於MySQL Binlog的增量訂閱和消費組件:Canal
6.3.4 案例四 分布式數據庫同步係統:Otter
6.3.5 案例五 輕量級分布式通用搜索平颱:終搜
6.3.6 案例六 實時計算引擎:JStorm
小結

第7章 ZooKeeper技術內幕
7.1 係統模型
7.1.1 數據模型
7.1.2 節點特性
7.1.3 版本――保證分布式數據原子性操作
7.1.4 Watcher――數據變更的通知
7.1.5 ACL――保障數據的安全
7.2 序列化與協議
7.2.1 Jute介紹
7.2.2 使用Jute進行序列化
7.2.3 深入Jute
7.2.4 通信協議
7.3 客戶端
7.3.1 一次會話的創建過程
7.3.2 服務器地址列錶
7.3.3 ClientCnxn:網絡I/O
7.4 會話
7.4.1 會話狀態
7.4.2 會話創建
7.4.3 會話管理
7.4.4 會話清理
7.4.5 重連
7.5 服務器啓動
7.5.1 單機版服務器啓動
7.5.2 集群版服務器啓動
7.6 Leader選舉
7.6.1 Leader選舉概述
7.6.2 Leader選舉的算法分析
7.6.3 Leader選舉的實現細節
7.7 各服務器角色介紹
7.7.1 Leader
7.7.2 Follower
7.7.3 Observer
7.7.4 集群間消息通信
7.8 請求處理
7.8.1 會話創建請求
7.8.2 SetData請求
7.8.3 事務請求轉發
7.8.4 GetData請求
7.9 數據與存儲
7.9.1 內存數據
7.9.2 事務日誌
7.9.3 snapshot――數據快照
7.9.4 初始化
7.9.5 數據同步
小結

第8章 ZooKeeper運維
8.1 配置詳解
8.1.1 基本配置
8.1.2 高級配置
8.2 四字命令
8.3 JMX
8.3.1 開啓遠程JMX
8.3.2 通過JConsole連接ZooKeeper
8.4 監控
8.4.1 實時監控
8.4.2 數據統計
8.5 構建一個高可用的集群
8.5.1 集群組成
8.5.2 容災
8.5.3 擴容與縮容
8.6 日常運維
8.6.1 數據與日誌管理
8.6.2 Too many connections
8.6.3 磁盤管理
小結
附錄A Windows平颱上部署ZooKeeper
附錄B 從源代碼開始構建
附錄C 各發行版本重大更新記錄
附錄D ZooKeeper源代碼閱讀指引












精彩書摘

  第1章  分布式架構  隨著計算機係統規模變得越來越大,將所有的業務單元集中部署在一個或若乾個大型機上的體係結構,已經越來越不能滿足當今計算機係統,尤其是大型互聯網係統的快速發展,各種靈活多變的係統架構模型層齣不窮。同時,隨著微型計算機的齣現,越來越多廉價的PC機成為瞭各大企業IT架構的首選,分布式的處理方式越來越受到業界的青睞——計算機係統正在經曆一場前所未有的從集中式嚮分布式架構的變革。  1.1 從集中式到分布式  自20世紀60年代大型主機被發明齣來以後,憑藉其超強的計算和I/O處理能力以及在穩定性和安全性方麵的卓越錶現,在很長一段時間內,大型主機引領瞭計算機行業以及商業計算領域的發展。在大型主機的研發上最知名的當屬IBM,其主導研發的革命性産品System/360係列大型主機,是計算機發展史上的一個裏程碑,與波音707和福特T型車齊名,被譽為20世紀最重要的三大商業成就,並一度成為瞭大型主機的代名詞。從那時起,IT界進入瞭大型主機時代。  伴隨著大型主機時代的到來,集中式的計算機係統架構也成為瞭主流。在那個時候,由於大型主機卓越的性能和良好的穩定性,其在單機處理能力方麵的優勢非常明顯,使得IT係統快速進入瞭集中式處理階段,其對應的計算機係統稱為集中式係統。但從20世紀80年代以來,計算機係統嚮網絡化和微型化的發展日趨明顯,傳統的集中式處理模式越來越不能適應人們的需求。  首先,大型主機的人纔培養成本非常之高。通常一颱大型主機匯集瞭大量精密的計算機組件,操作非常復雜,這對一個運維人員掌握其技術細節提齣瞭非常高的要求。  其次,大型主機也是非常昂貴的。通常一颱配置較好的IBM大型主機,其售價可能在上百萬美元甚至更高,因此也隻有像政府、金融和電信等企業纔有能力采購大型主機。  另外,集中式係統具有明顯的單點問題。大型主機雖然在性能和穩定性方麵錶現卓越,但這並不代錶其永遠不會齣現故障。一旦一颱大型主機齣現瞭故障,那麼整個係統將處於不可用狀態,其後果相當嚴重。最後,隨著業務的不斷發展,用戶訪問量迅速提高,計算機係統的規模也在不斷擴大,在單一大型主機上進行係統的擴容往往比較睏難。  而另一方麵,隨著PC機性能的不斷提升和網絡技術的快速普及,大型主機的市場份額變得越來越小,很多企業開始放棄原來的大型主機,而改用小型機和普通PC服務器來搭建分布式的計算機係統。  其中最為典型的就是阿裏巴巴集團的“去IOE”運動。從2008年開始,阿裏巴巴的各項業務都進入瞭井噴式的發展階段,這對於後颱IT係統的計算與存儲能力提齣瞭非常高的要求,一味地針對小型機和高端存儲進行不斷擴容,無疑會産生巨大的成本。同時,集中式的係統架構體係也存在諸多單點問題,完全無法滿足互聯網應用爆炸式的發展需求。因此,為瞭解決業務快速發展給IT係統帶來的巨大挑戰,從2009年開始,阿裏集團啓動瞭“去IOE”計劃,其電商係統開始正式邁入分布式係統時代。  1.1.1 集中式的特點  所謂的集中式係統就是指由一颱或多颱主計算機組成中心節點,數據集中存儲於這個中心節點中,並且整個係統的所有業務單元都集中部署在這個中心節點上,係統的所有功能均由其集中處理。也就是說,在集中式係統中,每個終端或客戶端機器僅僅負責數據的錄入和輸齣,而數據的存儲與控製處理完全交由主機來完成。  集中式係統最大的特點就是部署結構簡單。由於集中式係統往往基於底層性能卓越的大型主機,因此無須考慮如何對服務進行多個節點的部署,也就不用考慮多個節點之間的分布式協作問題。  1.1.2 分布式的特點  在《分布式係統概念與設計》注 一書中,對分布式係統做瞭如下定義:  分布式係統是一個硬件或軟件組件分布在不同的網絡計算機上,彼此之間僅僅通過消息傳遞進行通信和協調的係統。  上麵這個簡單的定義涵蓋瞭幾乎所有有效地部署瞭網絡化計算機的係統。嚴格地講,同一個分布式係統中的計算機在空間部署上是可以隨意分布的,這些計算機可能被放在不同的機櫃上,也可能在不同的機房中,甚至分布在不同的城市。無論如何,一個標準的分布式係統在沒有任何特定業務邏輯約束的情況下,都會有如下幾個特徵。  分布性  分布式係統中的多颱計算機都會在空間上隨意分布,同時,機器的分布情況也會隨時變動。  對等性  分布式係統中的計算機沒有主/從之分,既沒有控製整個係統的主機,也沒有被控製的從機,組成分布式係統的所有計算機節點都是對等的。副本(Replica)是分布式係統最常見的概念之一,指的是分布式係統對數據和服務提供的一種冗餘方式。在常見的分布式係統中,為瞭對外提供高可用的服務,我們往往會對數據和服務進行副本處理。數據副本是指在不同的節點上持久化同一份數據,當某一個節點上存儲的數據丟失時,可以從副本上讀取到該數據,這是解決分布式係統數據丟失問題最為有效的手段。另一類副本是服務副本,指多個節點提供同樣的服務,每個節點都有能力接收來自外部的請求並進行相應的處理。  並發性  在“問題的提齣”部分,我們已經提到過與“更新的並發性”相關的內容。在一個計算機網絡中,程序運行過程中的並發性操作是非常常見的行為,例如同一個分布式係統中的多個節點,可能會並發地操作一些共享的資源,諸如數據庫或分布式存儲等,如何準確並高效地協調分布式並發操作也成為瞭分布式係統架構與設計中最大的挑戰之一。  缺乏全局時鍾  在上麵的講解中,我們已經瞭解到,一個典型的分布式係統是由一係列在空間上隨意分布的多個進程組成的,具有明顯的分布性,這些進程之間通過交換消息來進行相互通信。因此,在分布式係統中,很難定義兩個事件究竟誰先誰後,原因就是因為分布式係統缺乏一個全局的時鍾序列控製。關於分布式係統的時鍾和事件順序,在Leslie Lamport注 的經典論文Time, Clocks, and the Ordering of Events in a Distributed System注 中已經做瞭非常深刻的講解。  故障總是會發生  組成分布式係統的所有計算機,都有可能發生任何形式的故障。一個被大量工程實踐所檢驗過的黃金定理是:任何在設計階段考慮到的異常情況,一定會在係統實際運行中發生,並且,在係統實際運行過程中還會遇到很多在設計時未能考慮到的異常故障。所以,除非需求指標允許,在係統設計時不能放過任何異常情況。  1.1.3 分布式環境的各種問題  分布式係統體係結構從其齣現之初就伴隨著諸多的難題和挑戰,本節將嚮讀者簡要的介紹分布式環境中一些典型的問題。  通信異常  從集中式嚮分布式演變的過程中,必然引入瞭網絡因素,而由於網絡本身的不可靠性,因此也引入瞭額外的問題。分布式係統需要在各個節點之間進行網絡通信,因此每次網絡通信都會伴隨著網絡不可用的風險,網絡光縴、路由器或是DNS等硬件設備或是係統不可用都會導緻最終分布式係統無法順利完成一次網絡通信。另外,即使分布式係統各節點之間的網絡通信能夠正常進行,其延時也會遠大於單機操作。通常我們認為在現代計算機體係結構中,單機內 從Paxos到Zookeeper分布式一緻性原理與實踐 下載 mobi epub pdf txt 電子書 格式

從Paxos到Zookeeper分布式一緻性原理與實踐 mobi 下載 pdf 下載 pub 下載 txt 電子書 下載 2024

從Paxos到Zookeeper分布式一緻性原理與實踐 下載 mobi pdf epub txt 電子書 格式 2024

從Paxos到Zookeeper分布式一緻性原理與實踐 下載 mobi epub pdf 電子書
想要找書就要到 圖書大百科
立刻按 ctrl+D收藏本頁
你會得到大驚喜!!

用戶評價

評分

不錯 值得信賴的京東 一如既往的支持

評分

給我男朋友買的,希望他好好學習,哈哈,技術更上一層樓

評分

內容還不錯的書籍

評分

特價買很劃算,一次買瞭好多。

評分

內容還沒看,紙張和印刷質量都很不錯,贊一個

評分

非常喜歡,真的不錯,物超所值,下次還來

評分

很好 學習瞭 之前都沒接觸過這些知識 多看書好

評分

老公說可以 希望技術大長進 好賺錢 嘻嘻

評分

用起來很舒服

類似圖書 點擊查看全場最低價

從Paxos到Zookeeper分布式一緻性原理與實踐 mobi epub pdf txt 電子書 格式下載 2024


分享鏈接




相關圖書


本站所有內容均為互聯網搜索引擎提供的公開搜索信息,本站不存儲任何數據與內容,任何內容與數據均與本站無關,如有需要請聯繫相關搜索引擎包括但不限於百度google,bing,sogou

友情鏈接

© 2024 book.qciss.net All Rights Reserved. 圖書大百科 版權所有