-
>
全國計算機等級考試最新真考題庫模擬考場及詳解·二級MSOffice高級應用
-
>
決戰行測5000題(言語理解與表達)
-
>
軟件性能測試.分析與調優實踐之路
-
>
第一行代碼Android
-
>
JAVA持續交付
-
>
EXCEL最強教科書(完全版)(全彩印刷)
-
>
深度學習
從Paxos到Zookeeper分布式一致性原理與實踐 版權信息
- ISBN:9787121249679
- 條形碼:9787121249679 ; 978-7-121-24967-9
- 裝幀:一般膠版紙
- 冊數:暫無
- 重量:暫無
- 所屬分類:>
從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服務。
從Paxos到Zookeeper分布式一致性原理與實踐 內容簡介
□ 國內**本系統講解zookeeper這一應用*廣泛、*成熟分布式協調框架的技術書。 □ 原理深入,闡述清晰,覆蓋acid、cap、base,二階段/三階段提交,paxos、zab協議等熱門話題。 □ 徹底剖析分布式一致性問題,并給出相應的系統思路,以及完整的解決方案及實戰參考。 □ 無論是開發人員,還是運維人士,都可以通過書中zookeeper使用方法、內部實現及運維技巧來全面提升。
從Paxos到Zookeeper分布式一致性原理與實踐 目錄
1.1 從集中式到分布式 1
1.1.1 集中式的特點 2
1.1.2 分布式的特點 2
1.1.3 分布式環境的各種問題 4
1.2 從acid到cap/base 5
1.2.1 acid 5
1.2.2 分布式事務 8
1.2.3 cap和base理論 9
小結 15
第2章 一致性協議 17
2.1 2pc與3pc 17
2.1.1 2pc 17
2.1.2 3pc 21
2.2 paxos算法 24
2.2.1 追本溯源 25
2.2.2 paxos理論的誕生 26
2.2.3 paxos算法詳解 27
小結 37
第3章 paxos的工程實踐 39
3.1 chubby 39
3.1.1 概述 39
3.1.2 應用場景 40
3.1.3 設計目標 40
3.1.4 chubby技術架構 43
3.1.5 paxos協議實現 52
3.2 hypertable 55
3.2.1 概述 55
3.2.2 算法實現 57
小結 58
第4章 zookeeper與paxos 59
4.1 初識zookeeper 59
4.1.1 zookeeper介紹 59
4.1.2 zookeeper從何而來 62
4.1.3 zookeeper的基本概念 62
4.1.4 為什么選擇zookeeper 64
4.2 zookeeper的zab協議 65
4.2.1 zab協議 65
4.2.2 協議介紹 66
4.2.3 深入zab協議 71
4.2.4 zab與paxos算法的聯系與區別 77
小結 78
第5章 使用zookeeper 79
5.1 部署與運行 79
5.1.1 系統環境 79
5.1.2 集群與單機 80
5.1.3 運行服務 84
5.2 客戶端腳本 88
5.2.1 創建 88
5.2.2 讀取 89
5.2.3 更新 90
5.2.4 刪除 91
5.3 java客戶端api使用 91
5.3.1 創建會話 91
5.3.2 創建節點 95
5.3.3 刪除節點 99
5.3.4 讀取數據 100
5.3.5 更新數據 109
5.3.6 檢測節點是否存在 113
5.3.7 權限控制 115
5.4 開源客戶端 120
5.4.1 zkclient 120
5.4.2 curator 130
小結 162
第6章 zookeeper的典型應用場景 163
6.1 典型應用場景及實現注 163
6.1.1 數據發布/訂閱 164
6.1.2 負載均衡 166
6.1.3 命名服務 170
6.1.4 分布式協調/通知 173
6.1.5 集群管理 179
6.1.6 master選舉 185
6.1.7 分布式鎖 188
6.1.8 分布式隊列 194
小結 197
6.2 zookeeper在大型分布式系統中的應用 197
6.2.1 hadoop 198
6.2.2 hbase 203
6.2.3 kafka 207
6.3 zookeeper在阿里巴巴的實踐與應用 213
6.3.1 案例一 消息中間件:metamorphosis 213
6.3.2 案例二 rpc服務框架:dubbo 217
6.3.3 案例三 基于mysql binlog的增量訂閱和消費組件:canal 219
6.3.4 案例四 分布式數據庫同步系統:otter 223
6.3.5 案例五 輕量級分布式通用搜索平臺:終搜 226
6.3.6 案例六 實時計算引擎:jstorm 238
小結 242
第7章 zookeeper技術內幕 243
7.1 系統模型 243
7.1.1 數據模型 243
7.1.2 節點特性 244
7.1.3 版本——保證分布式數據原子性操作 246
7.1.4 watcher——數據變更的通知 249
7.1.5 acl——保障數據的安全 265
7.2 序列化與協議 272
7.2.1 jute介紹 272
7.2.2 使用jute進行序列化 273
7.2.3 深入jute 275
7.2.4 通信協議 277
7.3 客戶端 284
7.3.1 一次會話的創建過程 286
7.3.2 服務器地址列表 289
7.3.3 clientcnxn:網絡i/o 295
7.4 會話 298
7.4.1 會話狀態 298
7.4.2 會話創建 299
7.4.3 會話管理 304
7.4.4 會話清理 307
7.4.5 重連 309
7.5 服務器啟動 311
7.5.1 單機版服務器啟動 312
7.5.2 集群版服務器啟動 315
7.6 leader選舉 321
7.6.1 leader選舉概述 321
7.6.2 leader選舉的算法分析 323
7.6.3 leader選舉的實現細節 328
7.7 各服務器角色介紹 335
7.7.1 leader 335
7.7.2 follower 338
7.7.3 observer 339
7.7.4 集群間消息通信 339
7.8 請求處理 342
7.8.1 會話創建請求 343
7.8.2 setdata請求 351
7.8.3 事務請求轉發 354
7.8.4 getdata請求 355
7.9 數據與存儲 356
7.9.1 內存數據 356
7.9.2 事務日志 358
7.9.3 snapshot——數據快照 364
7.9.4 初始化 368
7.9.5 數據同步 372
小結 376
第8章 zookeeper運維 379
8.1 配置詳解 379
8.1.1 基本配置 379
8.1.2 高級配置 380
8.2 四字命令 384
8.3 jmx 390
8.3.1 開啟遠程jmx 390
8.3.2 通過jconsole連接zookeeper 391
8.4 監控 397
8.4.1 實時監控 397
8.4.2 數據統計 398
8.5 構建一個高可用的集群 398
8.5.1 集群組成 398
8.5.2 容災 399
8.5.3 擴容與縮容 402
8.6 日常運維 402
8.6.1 數據與日志管理 402
8.6.2 too many connections 404
8.6.3 磁盤管理 405
小結 405
附錄a windows平臺上部署zookeeper 406
附錄b 從源代碼開始構建 409
附錄c 各發行版本重大更新記錄 414
附錄d zookeeper源代碼閱讀指引 418
從Paxos到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 應用實例,為讀者構建自己的分布式高可用服務提供了參考。
搜狐移動事業部高級運維主管 劉鵬
從Paxos到Zookeeper分布式一致性原理與實踐 作者簡介
倪超,阿里巴巴集團高級研發工程師,國家認證系統分析師,畢業于杭州電子科技大學計算機系。2010年加入阿里巴巴中間件團隊擔任研發實習崗位,一直從事ZooKeeper的開發與運維工作,從中學習與總結了不少分布式一致性相關的理論與實踐經驗,尤其對ZooKeeper及其相關技術有非常深入的研究。目前在中間件團隊專家組任職產品經理,負責分布式產品的產品化和云計算化改造工作。 新浪微博:@ni掌柜
- >
回憶愛瑪儂
- >
中國人在烏蘇里邊疆區:歷史與人類學概述
- >
名家帶你讀魯迅:故事新編
- >
羅庸西南聯大授課錄
- >
李白與唐代文化
- >
朝聞道
- >
月亮虎
- >
自卑與超越