登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書

『簡體書』etcd技术内幕

書城自編碼: 3214669
分類:簡體書→大陸圖書→計算機/網絡行业软件及应用
作者: 百里燊
國際書號(ISBN): 9787121343865
出版社: 电子工业出版社
出版日期: 2018-07-01


書度/開本: 16开 釘裝: 平装

售價:HK$ 126.4

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
俄国女皇:叶卡捷琳娜二世传(精装插图版)
《 俄国女皇:叶卡捷琳娜二世传(精装插图版) 》

售價:HK$ 81.6
真想让我爱的人读读这本书
《 真想让我爱的人读读这本书 》

售價:HK$ 57.6
解套基本逻辑与六大战法
《 解套基本逻辑与六大战法 》

售價:HK$ 58.8
超级制造
《 超级制造 》

售價:HK$ 143.9
明朝270年:明朝的外交博弈和权力游戏
《 明朝270年:明朝的外交博弈和权力游戏 》

售價:HK$ 69.6
禅之道(畅销全球60余年的一代经典,揭示禅对现代人的解脱意义)
《 禅之道(畅销全球60余年的一代经典,揭示禅对现代人的解脱意义) 》

售價:HK$ 82.8
改变历史的意大利豪门 : 传奇家族美第奇
《 改变历史的意大利豪门 : 传奇家族美第奇 》

售價:HK$ 90.0
Procreate插画手绘从新手到高手
《 Procreate插画手绘从新手到高手 》

售價:HK$ 105.6

 

建議一齊購買:

+

HK$ 66.2
《 分布式缓存 原理、架构及Go语言实现 》
+

HK$ 112.2
《 云原生分布式存储基石:etcd深入解析 》
+

HK$ 68.2
《 Kubernetes经典实例 》
+

HK$ 126.4
《 Kubernetes权威指南——企业级容器云实战 》
+

HK$ 97.4
《 分布式对象存储 原理 架构及Go语言实现 》
+

HK$ 143.6
《 深入分布式缓存:从原理到实践 》
編輯推薦:
本书主要从源码角度深入剖析etcd:
etcd的背景知识,如何搭建源码环境及相关命令
Raft协议的背景,如何处理各种异常场景及相关扩展
etcd-raft模块对Raft协议的实现,etcd自带的raftexample示例
HTTP编程基础,etcd-rafthttp模块的工作原理和具体实现
etcd中如何处理WAL日志文件及快照数据文件
etcd的底层存储(v2和v3版本)
etcd服务端及扩展
內容簡介:
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.1 etcd简介
1.2 数据模型
1.3 环境搭建
1.3.1 环境变量
1.3.2 代码结构
1.3.3 运行
本章小结
第2章 Raft协议
2.1 Leader选举
2.2 日志复制
2.3 网络分区的场景
2.4 日志压缩与快照
2.5 其他技术点
2.5.1 linearizable语义
2.5.2 只读请求
2.5.3 PreVote状态
2.5.4 Leader节点转移
本章小结
第3章 etcd-raft模块详解
3.1 raft结构体
3.1.1 Config结构体
3.1.2 Storage接口及其实现
3.1.3 unstable结构体
3.1.4 raftLog结构体
3.1.5 raft实现
3.2 Node接口
3.2.1 node结构体
3.2.2 初始化
3.2.3 run方法
3.2.4 Node接口实现
3.3 raftexample示例分析
3.3.1 raftNode
3.3.2 HTTP服务端
3.3.3 kvstore
本章小结
第4章 网络层
4.1 Go语言网络编程基础
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实例
4.2.5 streamReader实例
4.2.6 snapshotSender
4.3 Handler实例
4.3.1 pipelineHandler
4.3.2 streamHandler
4.3.3 snapshotHandler
本章小结
第5章 WAL日志与快照
5.1 WAL日志
5.1.1 初始化
5.1.2 打开日志
5.1.3 读取日志
5.1.4 追加日志
5.1.5 文件切换
5.2 SnapShotter
本章小结
第6章 storage
6.1 etcd v2版本存储
6.1.1 node
6.1.2 Event
6.1.3 watcher和watcherHub
6.1.4 store
6.2 etcd v3版本存储
6.2.1 backend
6.2.2 watcher机制
6.2.3 Lessor
本章小结
第7章 etcd-server详解
7.1 raftNode结构体
7.2 RaftCluster
7.3 EtcdServer
7.3.1 初始化
7.3.2 注册Handler
7.3.3 启动
7.4 ApplierV2和applierV3
7.4.1 ApplierV2
7.4.2 applierV3
7.5 AlarmStore
本章小结
第8章 etcd客户端详解
8.1 GRPC基础
8.1.1 定义proto文件
8.1.2 服务端
8.1.3 创建客户端
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接口
本章小结
参考文献
內容試閱
前言
etcd是一个可靠的分布式KV存储,其底层使用Raft算法保证一致性,主要用于共享配置和服务发现。etcd是CoreOS公司发起的一个开源项目,其源代码地址为https:github.com coreosetcd。
目前提供配置共享和服务发现功能的组件还是比较多的,其中应用最广泛、大家最熟悉的应该就是ZooKeeper了,很多开源项目都在不同程度上依赖了ZooKeeper,例如,Dubbo、Kafka。在Golang社区中,etcd是唯一一个可以媲美ZooKeeper的组件,在有些方面,etcd甚至超越了ZooKeeper,给开发者眼前一亮的感觉。
etcd作为一个优秀的分布式KV存储产品,其底层的etcd-raft模块实现了Raft协议,可以帮助开发者快速实现最终一致性功能。etcd以其高性能、易维护、Raft实现等优点,受到越来越多的开发人员的青睐,在Golang社区中声名大噪。
etcd的代码中有很多亮点,为了提高整体性能,其实现中使用了大量的goroutine和Channel。etcd 3 中开始使用BoltDB作为底层的持久存储,使用BTree索引加速查询,还提供了可靠的Watcher功能,同时提供了基于GRPC的新版本客户端。当然,etcd 3依然兼容etcd 2的内存存储和HTTP API。
etcd 3中有很多令人称赞的功能和优秀的设计,但至今还没有深入剖析etcd 3的内部设计和实现细节的图书,本书以etcd 3为基础,详细分析了etcd的架构设计和实现细节,其中穿插介绍了etcd源码中涉及的基础知识,以及笔者在实践中的思考。
如何阅读本书
由于篇幅限制,本书并没有详细介绍Go语言的基础知识,但为了便于理解读者理解etcd的设计思想和实现细节,笔者介绍了一些必需且重要的基础内容,例如,Go语言提供的HTTP功能。
本书共8章,主要从源码角度深入剖析etcd的原理和实现。建议读者先阅读前两章,了解Raft协议之后,再开始学习etcd的工作原理和代码实现。
第1章简要介绍etcd的背景知识及其基本的数据模型,然后介绍如何搭建源码环境及相关的命令。
第2章从基本的Raft协议开始介绍,帮助读者了解Raft协议的背景知识、大致工作原理、如何处理各种异常场景,以及几个比较重要的扩展点。
第3章着重分析etcd中的raft模块对Raft协议的实现,etcd-raft模块是etcd的核心模块之一,GitHub上很多其他项目直接使用etcd-raft模块作为其Raft协议的底层实现。同时,本章也介绍了etcd自带的raftexample示例,帮助读者了解etcd-raft模块的基本使用方法,方便读者在实践中直接使用etcd-raft模块。
第4章简单介绍HTTP编程基础,以及etcd-rafthttp模块的工作原理和具体实现,其中涉及RoundTripper的基本原理、rafthttp.Transporter的实现及多种Handler的实现。
第5章介绍etcd中如何处理WAL日志文件和快照数据文件,其中分析了WAL结构体和Snapshotter的具体实现。
第6章详细分析etcd的底层存储,对etcd v2和etcd v3两个版本的存储都做了详细的介绍,不仅分析了底层的KV存储,还分析了watcher机制和Lessor的实现原理。
第7章重点介绍etcd服务端的内容,etcd服务端会组装并协调前面介绍的各个组件,并且在它们的基础上扩展出了更多的功能。
第8章主要介绍etcd客户端的相关内容,详细分析了v2和v3两个版本客户端的具体实现。
如果读者在阅读本书的过程中,发现任何不妥之处,请将您宝贵的意见和建议发送到邮箱shen_baili @163.com,也欢迎读者朋友通过此邮箱与我进行交流。
致谢
感谢我的母亲,谢谢您的付出和牺牲!
感谢白酱陪我看过一盏盏亮起的路灯,感谢三十在技术上提供的帮助。
感谢电子工业出版社博文视点的陈晓猛老师,是您的辛勤工作让本书的出版成为可能。同时还要感谢许多我不知道名字的幕后工作人员为本书付出的努力。
百里燊

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.