注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計分布式一致性算法開發(fā)實(shí)戰(zhàn)

分布式一致性算法開發(fā)實(shí)戰(zhàn)

分布式一致性算法開發(fā)實(shí)戰(zhàn)

定 價:¥89.00

作 者: 趙辰 著
出版社: 北京大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787301312858 出版時間: 2020-04-01 包裝: 平裝
開本: 16開 頁數(shù): 396 字?jǐn)?shù):  

內(nèi)容簡介

  從介紹分布式一致性算法開始,分析了Raft算法以及Raft算法所依賴的理論,在此基礎(chǔ)上講解并實(shí)現(xiàn)了Raft算法以及基于Raft算法的KV服務(wù)。通過本書,可以深入了解Raft算法的運(yùn)行機(jī)制,也可以學(xué)到如何相對正確地實(shí)現(xiàn)Raft?! 斗植际揭恢滦运惴ㄩ_發(fā)實(shí)戰(zhàn)》分為11章,第1章簡單介紹分布式一致性算法,第2章詳細(xì)分析Raft算法,第3章在第2章的基礎(chǔ)上進(jìn)行整體設(shè)計,第4~8章逐個講解基于Raft算法的KV服務(wù)的各個組件的實(shí)現(xiàn),第9章講解日志快照,第10章是生產(chǎn)環(huán)境必需的服務(wù)器成員變更功能,第11章介紹一些相關(guān)的Raft算法優(yōu)化?!”緯敿?xì)介紹了Raft的核心算法、服務(wù)器成員變更以及各種優(yōu)化的實(shí)現(xiàn),適合那些想嘗試實(shí)現(xiàn)Raft算法或者在生產(chǎn)環(huán)境加入Raft算法的人,也適合那些對于Raft算法有興趣的讀者。

作者簡介

  趙辰,男,1989年生于上海,軟件工程師。曾在螞蟻金服工作四年,擅長基于Java語言的后端開發(fā),對Java語言下的多線程編程、分布式計算、多核編程有深入研究。

圖書目錄

第1章 分布式一致性與共識算法簡介 /1
1.1 CAP定理 /2
1.2 共識算法 /3
1.3 本章小結(jié) /6


第2章 Raft核心算法分析 /7
2.1 不考慮分布式一致性的集群 /8
2.2 日志狀態(tài)機(jī)模型 /8
2.3 基于Quorum機(jī)制的寫入 /9
2.4 基于日志比較的選舉 /10
2.5 Raft算法中的選舉 /13
2.6 Raft算法中的日志復(fù)制 /18
2.7 Raft算法中的一些細(xì)節(jié)問題 /21
2.8 本章小結(jié) /25


第3章 整體設(shè)計 /27
3.1 設(shè)計目標(biāo) /28
3.2 設(shè)計和實(shí)現(xiàn)順序 /29
3.3 參考實(shí)現(xiàn) /29
3.4 狀態(tài)數(shù)據(jù)分析 /30
3.5 靜態(tài)數(shù)據(jù)分析 /32
3.6 集群成員與映射表 /34
3.7 組件分析 /38
3.8 如何解耦組件間的雙向調(diào)用關(guān)系 /39
3.9 線程模型分析 /43
3.10 項目準(zhǔn)備 /48
3.11 本章小結(jié) /56


第4章 選舉實(shí)現(xiàn) /58
4.1 角色建?!?59
4.2 定時器組件 /63
4.3 消息建?!?67
4.4 關(guān)聯(lián)組件和工具 /70
4.5 一致性(核心)組件 /78
4.6 測試 /91
4.7 本章小結(jié) /103


第5章 日志實(shí)現(xiàn) /104
5.1 日志實(shí)現(xiàn)要求 /105
5.2 日志實(shí)現(xiàn)分析 /105
5.3 日志條目序列 /110
5.4 日志實(shí)現(xiàn) /133
5.5 與選舉部分對接 /142
5.6 測試 /146
5.7 本章小結(jié) /159


第6章 通信實(shí)現(xiàn) /160
6.1 通信接口分析 /161
6.2 序列化與反序列化 /162
6.3 通信實(shí)現(xiàn)分析 /165
6.4 通信組件的實(shí)現(xiàn) /168
6.5 測試 /186
6.6 本章小結(jié) /188


第7章 基于Raft算法的KV服務(wù) /189
7.1 服務(wù)設(shè)計 /190
7.2 服務(wù)實(shí)現(xiàn) /200
7.3 Node的組裝與服務(wù)的啟動 /213
7.4 關(guān)于測試 /221
7.5 本章小結(jié) /221


第8章 客戶端和整體測試 /222
8.1 客戶端設(shè)計與實(shí)現(xiàn) /223
8.2 客戶端的啟動和基本操作 /231
8.3 單機(jī)模式 /234
8.4 集群模式 /238
8.5 本章小結(jié) /258


第9章 日志快照 /259
9.1 日志快照的分析和設(shè)計 /260
9.2 日志快照的實(shí)現(xiàn) /267
9.3 測試 /289
9.4 本章小結(jié) /296


第10章 集群成員變更 /297
10.1 集群成員的安全變更 /298
10.2 成員變更的一些細(xì)節(jié)問題 /304
10.3 成員組件修改 /307
10.4 日志組件修改 /311
10.5 增加節(jié)點(diǎn) /324
10.6 移除節(jié)點(diǎn) /340
10.7 測試 /344
10.8 本章小結(jié) /357


第11章 Raft算法的優(yōu)化 /358
11.1 PreVote /359
11.2 ReadIndex /368
11.3 其他優(yōu)化 /383
11.4 本章小結(jié) /386

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號