分布式协议与算法实战--极客时间课程推荐/优惠
版权声明
本站非极客时间官网,与官方无任何关系。我们不提供课程下载或详细内容,仅作为课程分享和推荐平台。我们鼓励大家支持正版,尊重创作者的劳动成果,这样不仅能帮助创作者持续产出优质内容,也能让自己获得更好的学习体验。请通过官方渠道购买和学习课程,感谢您的理解与支持。
课程详情
你将获得:
- 可落地的 4 大分布式基础理论;
- 8 个最常用的分布式协议和算法;
- 3 大实战案例手把手教学;
- 以实战为中心的分布式内容体系。
课程介绍
在这个人人都喊着“高并发”“高可用”的时代里,分布式系统的重要性不言而喻。从整个行业的招聘趋势就能看出来,大型互联网公司在招聘后端工程师的时候,都会要求候选人有分布式相关的工作经验。
可分布式不是一两句话就能说清楚的,分布式架构、分布式存储、分布式中间件、分布式应用等等这些名词背后都会涉及一连串的技术,如果你不分主次,挨个去学习这些技术,肯定会疲惫不堪,得不偿失。
那么换个角度,又有哪些知识是分布式领域的基石呢?
如果你参与设计过分布式系统的话,应该不难理解这样一句话:分布式系统里最重要或者最核心的事情就是如何选择或设计适合的算法,以解决一致性和可用性相关的问题。 这正是本专栏的设计初衷,虽然分布式领域的知识繁杂且抽象,但我们希望能够带你搞定其中最核心、最难啃的算法和协议部分。
在韩健看来,分布式协议和算法是决定分布式系统如何运行的核心规则和关键步骤,是每一个工程师都应该具备的硬核知识。但与此同时,又因着算法本身比较抽象、知识碎片化、信息不准确等原因,提高了掌握这部分知识的门槛,
在这个专栏中,作者将自己多年来,支撑海量互联网服务中的分布式协议和算法的实战心得凝结成20篇文章。从理论到算法再到实战,带你建立学习信心,一步步将核心的算法深化为自己的知识体系,逐渐攻克分布式系统设计的关键难题。
理论篇: 将会为你讲解分布式架构设计的核心理论,让你学完就能落地实践。比如,如何根据场景特点进行CAP的权衡,是选择CP架构或者AP架构?如何使用二阶段提交协议和TCC,实现分布式系统的ACID特性?
协议和算法篇: 是关键重点,这里会重点讲解具体协议和算法的原理、特点、适用场景和常见误区。比如,你以为开发分布式系统使用 Raft 算法就足够了,其实它更适合性能要求不高的强一致性场景;又比如类似“Paxos 和 Raft 的区别在哪里”等常见面试题,你都会在这部分找到答案。
实战篇:主要帮你掌握分布式基础理论和分布式算法在工程实践中的应用。比如,剖析 InfluxDB 企业版的 CP 架构和 AP 架构的设计,以及 Raft、Quorum NWR、Anti-Entropy 等分布式算法的具体实现。
课程目录
开篇词
- 开篇词 | 想成为分布式高手?那就先把协议和算法烂熟于心吧
- 学习路径 | 分布式协议与算法你应该这么学
理论篇
- 01 | 拜占庭将军问题:有叛徒的情况下,如何才能达成共识?
- 02 | CAP理论:分布式系统的PH试纸,用它来测酸碱度
- 03 | ACID理论:CAP的酸,追求一致性
- 04 | BASE理论:CAP的碱,追求可用性
- 加餐 | 拜占庭将军问题:如何基于签名消息实现作战计划的一致性?
协议和算法篇
- 05 | Paxos算法(一):如何在多个节点间确定某变量的值?
- 06 | Paxos算法(二):Multi-Paxos不是一个算法,而是统称
- 07 | Raft算法(一):如何选举领导者?
- 08 | Raft算法(二):如何复制日志?
- 09 | Raft算法(三):如何解决成员变更的问题?
- 10 | 一致哈希算法:如何分群,突破集群的“领导者”限制?
- 11 | Gossip协议:流言蜚语,原来也可以实现一致性
- 12 | Quorum NWR算法:想要灵活地自定义一致性,没问题!
- 13 | PBFT算法:有人作恶,如何达成共识?
- 14 | PoW算法:有办法黑比特币吗?
- 15 | ZAB协议:如何实现操作的顺序性?
- 加餐 | ZAB协议(一):主节点崩溃了,怎么办?
- 加餐 | ZAB协议(二):如何从故障中恢复?
- 加餐 | ZAB协议(三):如何处理读写请求?
- 加餐 | PBFT算法:如何替换作恶的领导者?
- 加餐 | MySQL XA是如何实现分布式事务的?
- 加餐 | TCC如何实现指令执行的原子性?
实战篇
- 16 | InfluxDB企业版一致性实现剖析:他山之石,可以攻玉
- 17 | Hashicorp Raft(一):如何跨过理论和代码之间的鸿沟?
- 18 | Hashicorp Raft(二):如何以“集群节点”为中心使用API?
- 19 | 基于Raft的分布式KV系统开发实战(一):如何设计架构?
- 20 | 基于Raft的分布式KV系统开发实战(二):如何实现代码?
结束语
- 结束语 | 静下心来,享受技术的乐趣
- 结课测试 | 这些分布式协议与算法的知识,你都掌握了吗?