Etcd源码解析 - (EPUB全文下载)
文件大小:1.72 mb。
文件格式:epub 格式。
书籍内容:
版权信息
书名:Etcd源码解析
作者:侯宜军
本书由北京图灵文化发展有限公司发行数字版。版权所有,侵权必究。
您购买的图灵电子书仅供您个人使用,未经授权,不得以任何方式复制和传播本书内容。
我们愿意相信读者具有这样的良知和觉悟,与我们共同保护知识产权。
如果购买者有侵权行为,我们可能对该用户实施包括但不限于关闭该帐号等维权措施,并可能追究法律责任。
图灵社区会员 RONGEK(lilongduzhi@aliyun.com) 专享 尊重版权
内容摘要
作者简介
1 Etcd简介
1.1 Etcd是什么
1.2 Etcd vs ZK
1.3 Etcd的使用场景
1.4 Etcd读写性能
1.5 Etcd工作原理
1.6 Etcd概念词汇表
2 Raft协议
2.1 介绍
2.1.1 复制状态机
2.1.2 为了可理解性的设计
2.2 Raft 一致性算法
2.2.1 Raft 基础
2.2.2 领导人选举
2.2.3 日志复制
2.2.4 安全性
2.2.5 跟随者和候选人崩溃
2.2.6 时间和可用性
2.3 集群成员变化
2.4 日志压缩
2.5 客户端交互
3 操作实践
3.1 安装Etcd
3.2 使用Etcdctl
3.2.1 数据库操作
3.2.2 非数据库操作
3.2.3 命令选项
3.3 使用http方式
3.3.1 获取版本信息
3.3.2 key 的增删查改
3.3.3 TTL
3.3.4 监听变化
3.3.5 自动创建有序的keys
3.3.6 设置目录的 TTL
3.3.7 比较更新的原子操作
3.3.8 比较删除的原子操作
3.3.9 操作目录
3.3.10 隐藏的节点
3.3.11 查看集群数据信息
3.3.12 成员管理
3.4 集群
3.4.1 节点迁移
3.4.2 etcd配置
3.4.3 防火墙
3.4.4 haproxy配置
3.4.5 检查etcd服务运行状态
3.4.6 etcd备份
3.4.7 etcdctl操作
3.4.8 服务故障恢复
3.4.9 扩展etcd集群
3.4.10 数据迁移
3.4.11 高可用etcd集群方式(可选择)
3.5 项目实践
3.5.1 编程方式
3.5.2 服务发现示例
3.5.3 动态配置信息
4 源码分析
4.1 Go语言特性
4.1.1 自动垃圾回收
4.1.2 更丰富的内置类型
4.1.3 支持函数多返回值
4.1.4 错误处理
4.1.5 匿名函数和闭包
4.1.6 类型和接口
4.1.7 并发编程
4.1.8 支持反射
4.1.9 语言的交互性
4.2 搭建环境
4.2.1 安装Go
4.2.2 安装Goclipse
5 客户端源码
5.1 KV键值Http编程接口
5.1.1 创建K/V键值
5.1.2 更新键值
5.1.3 删除键值
5.1.4 获取键值
5.2 集群配置Http编程接口
5.2.1 获取成员列表
5.2.2 添加成员
5.2.3 删除成员
5.2.4 更新成员
5.2.5 获取Leader信息
5.3 Watcher客户端Http编程接口
5.3.1 入口
5.3.2 Watcher接口
5.3.3 httpWatcher
5.3.4 返回结果
5.4 命令行Etcdctl
5.4.1 Get命令
5.4.2 Set命令
5.4.3 mkdir命令
6 Http服务端
6.1 服务端总架构
6.2 Http服务
6.3 KV键值操作
6.4 集群配置
6.4.1 获取成员列表
6.4.2 添加成员
6.4.3 删除成员
6.4.4 更新成员
6.4.5 获取Leader信息
6.5 Watcher机制
6.5.1 handleKeyWatch
6.5.2 Store端
7 Etcd服务端实现
7.1 Etcd启动
7.2 EtcdServer
7.2.1 接口定义
7.2.2 实体定义
7.2.3 Do
7.2.4 初始化
7.2.5 主循环
7.2.6 AddMember
7.2.7 DeleteMember
7.2.8 UpdateMember
7.2.9 Leader
7.3 Etcd状态机
7.3.1 raftNode
7.3.2 node
8 集群间通信
8.1 Raft设计思路
8.1.1 任期
8.1.2 工作模式
8.2 消息类型
8.2.1 MsgProp
8.2.2 MsgApp
8.2.3 MsgAppResp
8.2.4 MsgBeat
8.2.5 MsgHeartbeat
8.2.6 MsgHeartbeatResp
8.2.7 MsgReadIndexResp
8.3 选举
8.3.1 MsgVote/MsgPreVote
8.3.2 MsgVoteResp/MsgPreVoteResp
8.3.3 MsgTransferLeader
8.3.4 MsgCheckQuorum
8.3.5 MsgTimeoutNow
8.3.6 转换角色
9 数据存储
9.1 内存数据
9.1.1 基本操作
9.1.2 载入
9.1.3 保存
9.1.4 Get
9.1.5 Set
9.1.6 list方法
9.1.7 Read方法
9.1.8 Write方法
9.2 事务和快照
9.2.1 文件命名规则
9.2.2 快照流程
9.2.3 快照保存
9.2.4 快照载入
9.2.5 事务日志
9.2.6 事务日志保存
9.2.7 事务日志载入
10 参考文献
内容摘要
大数据和人工智能时代,涌现了越来越多的开源框架,这些软件框架都有一个基本的共同点,就是大数据量的计算从而需要用到大量的机器集群作为支撑。那么一套分布式运算协调管理的软件就是必要条件之一,而Etcd正是一款广泛应用于各种分布式计算场景的成熟开源框架。
目前在分布式一致性应用软件领域,Etcd作为一款后起之秀越来越得到广大从业人员的偏爱,大有取代ZooKeeper之势。本书介绍了Etcd的原理和源码实现,本书共分成9个章节,第1 ............
书籍插图:
以上为书籍内容预览,如需阅读全文内容请下载EPUB源文件,祝您阅读愉快。
书云 Open E-Library » Etcd源码解析 - (EPUB全文下载)