本篇主要提供分布式协议与算法实战攻克分布式系统设计的关键难题韩健计算机与互联网电子书的pdf版本下载,本电子书下载方式为百度网盘方式,点击以上按钮下单完成后即会通过邮件和网页的方式发货,有问题请联系邮箱ebook666@outlook.com
赞誉
序
前言
理论篇
章拜占庭将军问题
1.1什么是拜占庭将军问题
1.1.1苏秦的困境
1.1.2二忠一叛难题
1.2口信消息,我们该如何处理呢
1.3如何解决□的
1.3.1什么是签名消息
1.3.2签名消息型拜占庭问题之解
1.4拜占庭容错算法和非拜占庭容错算法,该如何选择呢
1.5本章小结
第2章CAP理论
2.1CAP理论:分布式系统的ph试纸,用它来测酸碱度
2.1.1CAP三指标
2.1.2CAP不可能三角
2.1.3如何使用CAP理论
2.2AC理论:CAP的“酸”,追求一致
2.2.1二阶段提交协议
2.2.2TCC
2.3BASE理论:CAP的“碱”,追求可用
2.3.1实现基本可用的4板斧
2.3.2终一致
2.3.3如何使用BASE理论
2.4本章小结
协议与算法篇
第3章Paxos算法
3.1BasicPaxos:如何在多个节点间确定某变量的值
3.1.1你需要了解的3种角色
3.1.2如何达成共识
3.2Multi-Paxos:Multi-Paxos不是一个算法,而是统称
3.2.1兰伯特关于Multi-Paxos的思考
3.2.2Chubby是如何实现Multi-Paxos算法的
3.3本章小结
第4章Raft算法
4.1Raft是如何选举的
4.1.1有哪些成员身份
4.1.2选举的过程
4.1.3选举过程四连问
4.2Raft是如何复制日志的
4.2.1如何理解日志
4.2.2如何复制日志
4.2.3如何实现日志的一致
4.3Raft是如何解决成员变更问题的
4.3.1成员变更问题
4.3.2如何通过单节点变更解决成员变更问题
4.4Raft与一致
4.5本章小结
第5章一致哈希算法
5.1使用哈希算法有什么问题
5.2如何使用一致哈希算法实现哈希寻址
5.3本章小结
第6章ZAB协议
6.1如何实现操作的顺序
6.1.1为什么Multi-Paxos无法保操作的顺序
6.1.2ZAB协议是如何实现操作的顺序的
6.2主节点崩溃了,怎么办
6.2.1ZAB协议是如何选举的
6.2.2ZooKeeper是如何选举的
6.3如何从故障中恢复
6.3.1ZAB集群如何从故障中恢复
6.3.2ZooKeeper如何从故障中恢复
6.4ZAB协议:如何处理读写请求
6.4.1ZooKeeper处理读写请求的原理
6.4.2ZooKeeper处理读写请求的代码实现
6.5ZAB协议与Raft算法
6.6本章小结
第7章Gossip协议
7.1Gossip的三板斧
7.2如何使用反熵实现终一致
7.3本章小结
第8章orumNWR算法
8.1orumNWR的三要素
8.2如何实现orumNWR
8.3本章小结
第9章MySLXA
9.1什么是XA规范
9.2如何通过MySLXA实现分布式事务
9.3本章小结
0章TCC
10.1什么是TCC
10.2如何通过TCC实现指令执行的原子
10.3本章小结
1章PBFT算法
11.1口信消息型拜占庭问题之解的局限
11.2PBFT算法是如何达成共识的
11.3如何替换作恶的主节点
11.3.1主节点作恶会出现什么问题
11.3.2如何替换作恶的主节点
11.4PBFT算法的局限、解决办法和应用
11.5本章小结
2章PoW算法
12.1如何理解工作量明
12.2区块链是如何实现PoW算法的
12.3本章小结
实战篇
3章InfluxDB企业版一致实现剖析
13.1什么是时序数据库
13.2如何实现META节点一致
13.3如何实现DATA节点一致
13.3.1自定义副本数
13.3.2Hinted-handoff
13.3.3反熵
13.3.4orumNWR
13.4本章小结
4章HashicorpRaft
14.1如何跨过理论和代码之间的鸿沟
14.1.1HashicorpRaft如何实现选举
14.1.2HashicorpRaft如何复制日志
14.2如何以集群节点为中心使用API
14.2.1如何创建Raft节点
14.2.2如何增加集群节点
14.2.3如何移除集群节点
14.2.4如何查看集群节点状态
14.3本章小结
5章基于Raft的分布式KV系统开发实战
15.1如何设计架构
15.1.1如何设计接入协议
15.1.2如何设计KV作
15.1.3如何实现分布式集群
15.2如何实现代码
15.2.1如何实现接入协议
15.2.2如何实现KV作
15.2.3如何实现分布式集群
15.3本章小结
韩健
资深架构师,现就职于腾讯,担任监控大数据平台技术负责人,曾先后担任创业公司CTO、Intel资深。既对分布式系统、InfluxDB的架构设计和开发有深刻的理解,又在海量服务分布式组件架构设计、高能架构设计、高质量码编等方面有深厚的积累,经验丰富。
在腾讯先后负责了监控大数据平台、后台海量服务分布式组件(微服务开发框架、名字服务、配置中心等)等项目的相关工作。曾经和参与了多个高并发分布式系统、Linux内核、高能络操作系统等大型项目。
当前专注于下一代具有成本优势的高能监控大数据平台、海量服务分布式组件、DPDK高能TCPIP协议栈的创新和研发。
维护有订阅号influxdb-dev。
(1)作者背景:作者先后就职于Intel、腾讯等互联网大厂,担任重要工作。
(2)作者经验丰富:作者在大规模分布式系统领域有10余年工作经验,曾担任腾讯后端基础设施技术负责人。
(3)理论直指核心:深刻、详细剖析分布式的4大基础理论和10种常用协议和算法,帮读者透彻理解分布式的本质和精髓。
(4)实战工程落地:通过10余个小案例和3大综合案例,详细演示了如何在工程实践中将分布式的基础理论和协议与算法落地。
(5)12位专家:来自腾讯、华为、阿里等企业的12位专家高度评价并一致。