会员   密码 您忘记密码了吗?
1,575,263 本书已上架      购物流程 | 常见问题 | 联系我们 | 关于我们 | 用户协议

有店 App


当前分类

商品分类

浏览历史

当前位置: 首页 > 简体书 > etcd技術內幕
etcd技術內幕
上一张
下一张
prev next

etcd技術內幕

作者: 百里燊
出版社: 電子工業出版社
出版日期: 2018-07-01
商品库存: 点击查询库存
以上库存为海外库存属流动性。
可选择“空运”或“海运”配送,空运费每件商品是RM14。
配送时间:空运约8~12个工作天,海运约30个工作天。
(以上预计配送时间不包括出版社库存不足需调货及尚未出版的新品)
定价:   NT534.00
市场价格: RM96.00
本店售价: RM85.44
促销价: RM84.48
剩余时间: 请稍等, 正在载入中...
购买数量:
collect Add to cart Add booking
详细介绍 商品属性 商品标记
內容簡介

etcd是一個可靠的的分散式KV存儲,由CoreOS公司開發,其底層使用Raft演算法保證一致性,主要用於共享配置和服務發現。本書主要從源碼角度深入剖析etcd,首先介紹etcd的背景知識,並介紹如何搭建起源碼環境以及相關的命令。然後從基本的Raft協議開始介紹,幫助讀者了解Raft協議的背景。接著分析etcd-raft模塊對Raft協議的實現,etcd-raft模塊是etcd的核心模塊之一,該模塊也被很多其他的項目中直接作為Raft協議的底層實現。然後介紹Http編程基礎以及etcd-rafthttp模塊的工作原理和具體實現,介紹etcd中如何處理WAL日誌文件以及快照數據文件,詳細分析了etcd的底層存儲。最後重點介紹etcd服務端和etcd客戶端的相關內容。


作者介紹

百里燊,2015至今,負責XS雲平台的基礎架構設計及研發工作,XS雲平台以Kafka為消息匯流排,收集用戶產生操作日誌,為後台多個數據分析平台提供數據源。


目錄

第1章etcd入門
1.1etcd簡介
1.2資料模型
1.3環境搭建
1.3.1環境變數
1.3.2代碼結構
1.3.3運行
本章小結

第2章Raft協議
2.1Leader選舉
2.2日誌複製
2.3網路磁碟分割的場景
2.4日誌壓縮與快照
2.5其他技術點
2.5.1linearizable語義
2.5.2唯讀請求
2.5.3PreVote狀態
2.5.4Leader節點轉移
本章小結

第3章etcd-raft模組詳解
3.1raft結構體
3.1.1Config結構體
3.1.2Storage介面及其實現
3.1.3unstable結構體
3.1.4raftLog結構體
3.1.5raft實現
3.2Node介面
3.2.1node結構體
3.2.2初始化
3.2.3run()方法
3.2.4Node介面實現
3.3raftexample示例分析
3.3.1raftNode
3.3.2HTTP服務端
3.3.3kvstore
本章小結

第4章網路層
4.1Go語言網路程式設計基礎
4.1.1http.Server
4.1.2RoundTripper
4.2etcd-rafthttp模組詳解
4.2.1rafthttp.Transporter介面
4.2.2Peer介面
4.2.3pipeline
4.2.4streamWriter實例
4.2.5streamReader實例
4.2.6snapshotSender
4.3Handler實例
4.3.1pipelineHandler
4.3.2streamHandler
4.3.3snapshotHandler
本章小結

第5章WAL日誌與快照
5.1WAL日誌
5.1.1初始化
5.1.2打開日誌
5.1.3讀取日誌
5.1.4追加日誌
5.1.5檔切換
5.2SnapShotter
本章小結

第6章storage
6.1etcdv2版本存儲
6.1.1node
6.1.2Event
6.1.3watcher和watcherHub
6.1.4store
6.2etcdv3版本存儲
6.2.1backend
6.2.2watcher機制
6.2.3Lessor
本章小結

第7章etcd-server詳解
7.1raftNode結構體
7.2RaftCluster
7.3EtcdServer
7.3.1初始化
7.3.2註冊Handler
7.3.3啟動
7.4ApplierV2和applierV3
7.4.1ApplierV2
7.4.2applierV3
7.5AlarmStore
本章小結

第8章etcd用戶端詳解
8.1GRPC基礎
8.1.1定義proto檔
8.1.2服務端
8.1.3創建用戶端
8.2Clientv3
8.2.1kvServer
8.2.2EtcdServer
8.2.3Client
8.3Clientv2
8.3.1KeysAPI介面
8.3.2httpClient介面
本章小結
參考文獻