ETCD技術(shù)內(nèi)幕 版權(quán)信息
- ISBN:9787121343865
- 條形碼:9787121343865 ; 978-7-121-34386-5
- 裝幀:一般膠版紙
- 冊數(shù):暫無
- 重量:暫無
- 所屬分類:>
ETCD技術(shù)內(nèi)幕 本書特色
本書主要從源碼角度深入剖析etcd: l etcd的背景知識(shí),如何搭建源碼環(huán)境及相關(guān)命令 l Raft協(xié)議的背景,如何處理各種異常場景及相關(guān)擴(kuò)展 l etcd-raft模塊對Raft協(xié)議的實(shí)現(xiàn),etcd自帶的raftexample示例 l HTTP編程基礎(chǔ),etcd-rafthttp模塊的工作原理和具體實(shí)現(xiàn)
ETCD技術(shù)內(nèi)幕 內(nèi)容簡介
etcd是一個(gè)可靠的的分布式KV存儲(chǔ),由CoreOS公司開發(fā),其底層使用Raft算法保證一致性,主要用于共享配置和服務(wù)發(fā)現(xiàn)。本書主要從源碼角度深入剖析etcd,首先介紹etcd的背景知識(shí),并介紹如何搭建起源碼環(huán)境以及相關(guān)的命令。然后從基本的Raft協(xié)議開始介紹,幫助讀者了解Raft協(xié)議的背景。接著分析etcd-raft模塊對Raft協(xié)議的實(shí)現(xiàn),etcd-raft模塊是etcd的核心模塊之一,該模塊也被很多其他的項(xiàng)目中直接作為Raft協(xié)議的底層實(shí)現(xiàn)。然后介紹Http編程基礎(chǔ)以及etcd-rafthttp模塊的工作原理和具體實(shí)現(xiàn),介紹etcd中如何處理WAL日志文件以及快照數(shù)據(jù)文件,詳細(xì)分析了etcd的底層存儲(chǔ)。很后重點(diǎn)介紹etcd服務(wù)端和etcd客戶端的相關(guān)內(nèi)容。
ETCD技術(shù)內(nèi)幕 目錄
第1章 etcd入門
1.1 etcd簡介
1.2 數(shù)據(jù)模型
1.3 環(huán)境搭建
1.3.1 環(huán)境變量
1.3.2 代碼結(jié)構(gòu)
1.3.3 運(yùn)行
本章小結(jié)
第2章 Raft協(xié)議
2.1 Leader選舉
2.2 日志復(fù)制
2.3 網(wǎng)絡(luò)分區(qū)的場景
2.4 日志壓縮與快照
2.5 其他技術(shù)點(diǎn)
2.5.1 linearizable語義
2.5.2 只讀請求
2.5.3 PreVote狀態(tài)
2.5.4 Leader節(jié)點(diǎn)轉(zhuǎn)移
本章小結(jié)
第3章 etcd-raft模塊詳解
3.1 raft結(jié)構(gòu)體
3.1.1 Config結(jié)構(gòu)體
3.1.2 Storage接口及其實(shí)現(xiàn)
3.1.3 unstable結(jié)構(gòu)體
3.1.4 raftLog結(jié)構(gòu)體
3.1.5 raft實(shí)現(xiàn)
3.2 Node接口
3.2.1 node結(jié)構(gòu)體
3.2.2 初始化
3.2.3 run()方法
3.2.4 Node接口實(shí)現(xiàn)
3.3 raftexample示例分析
3.3.1 raftNode
3.3.2 HTTP服務(wù)端
3.3.3 kvstore
本章小結(jié)
第4章 網(wǎng)絡(luò)層
4.1 Go語言網(wǎng)絡(luò)編程基礎(chǔ)
4.1.1 http.Server
4.1.2 RoundTripper
4.2 etcd-rafthttp模塊詳解
4.2.1 rafthttp.Transporter接口
4.2.2 Peer接口
4.2.3 pipeline
4.2.4 streamWriter實(shí)例
4.2.5 streamReader實(shí)例
4.2.6 snapshotSender
4.3 Handler實(shí)例
4.3.1 pipelineHandler
4.3.2 streamHandler
4.3.3 snapshotHandler
本章小結(jié)
第5章 WAL日志與快照
5.1 WAL日志
5.1.1 初始化
5.1.2 打開日志
5.1.3 讀取日志
5.1.4 追加日志
5.1.5 文件切換
5.2 SnapShotter
本章小結(jié)
第6章 storage
6.1 etcd v2版本存儲(chǔ)
6.1.1 node
6.1.2 Event
6.1.3 watcher和watcherHub
6.1.4 store
6.2 etcd v3版本存儲(chǔ)
6.2.1 backend
6.2.2 watcher機(jī)制
6.2.3 Lessor
本章小結(jié)
第7章 etcd-server詳解
7.1 raftNode結(jié)構(gòu)體
7.2 RaftCluster
7.3 EtcdServer
7.3.1 初始化
7.3.2 注冊Handler
7.3.3 啟動(dòng)
7.4 ApplierV2和applierV3
7.4.1 ApplierV2
7.4.2 applierV3
7.5 AlarmStore
本章小結(jié)
第8章 etcd客戶端詳解
8.1 GRPC基礎(chǔ)
8.1.1 定義proto文件
8.1.2 服務(wù)端
8.1.3 創(chuàng)建客戶端
8.2 Client v3
8.2.1 kvServer
8.2.2 EtcdServer
8.2.3 Client
8.3 Client v2
8.3.1 KeysAPI接口
8.3.2 httpClient接口
本章小結(jié)
參考文獻(xiàn)
ETCD技術(shù)內(nèi)幕 作者簡介
百里燊,碩士研究生,小時(shí)候想成為闖蕩江湖的俠客,結(jié)果著迷于各種代碼,最終淪為辛勤工作的程序猿。期待與大家交流。 郵箱:shen_baili@163.com
- >
隨園食單
- >
【精裝繪本】畫給孩子的中國神話
- >
李白與唐代文化
- >
中國歷史的瞬間
- >
二體千字文
- >
姑媽的寶刀
- >
回憶愛瑪儂
- >
史學(xué)評論