- 课程目录
- 课程介绍
-
在线阅读:开篇词|掌握好学习路径,分布式系统原来如此简单
找出学习分布式的诸多误区,提升系统性学习的效率和质量。
-
01|导读:以前因后果为脉络,串起网状知识体系
追本溯源,让你在正式学习之前先拿到一份导航地图。
-
02|新的挑战:分布式系统是银弹吗?我看未必!
从根本上理解分布式系统的设计方法和原则,探讨分布式系统会面临哪些新的挑战。
-
03|CAP 理论:分布式场景下我们真的只能三选二吗?
什么是 CAP 理论,现在业界对于 CAP 理论的重新思考与理解又是什么呢?
-
春节加餐|系统性思维,高效学习和工作的利器
使用系统性思维让学习和工作变得更高效。
-
春节加餐|深入聊一聊计算机系统的时间
从单机系统的层面来讨论时间,可以让分布式系统的学习事半功倍!
-
春节加餐|技术债如房贷,是否借贷怎样取舍?
技术债务是生产力,要合理控制技术债务,让技术债务变成我们的杠杆!
-
04|注册发现: AP 系统和 CP 系统哪个更合适?
高可用性是应该考虑的设计指标,所以选择 AP 系统做中介存储是一个不错的选择。
-
05|负载均衡:从状态的角度重新思考负载均衡
从状态的角度重新思考负载均衡策略,了解多个被调用服务实例的选择问题。
-
06|配置中心:如何确保配置的强一致性呢?
对于配置中心的业务场景来说,选择一个 AP 模型的存储系统是最优的方案。
-
07|分布式锁:所有的分布式锁都是错误的?
分布式场景下,锁服务没有办法保证 100% 的正确性,我们认为可用性是设计分布式锁服务非常关键的一个目标。
-
08|重试幂等:让程序 Exactly-once 很难吗?
保证 Exactly-once 的三种方式是至少一次消息传递加消息幂等性、分布式快照加状态回滚和整体重做。
-
09 | 雪崩(一):熔断,让故障自适应地恢复
雪崩通常是由于整个系统中,一个很小的部分出现故障,进而导致系统其他部分也出现故障而引发的。
-
10 | 雪崩(二):限流,抛弃超过设计容量的请求
最常用的四个限流算法:固定窗口、滑动窗口、漏桶和令牌桶算法。
-
11|雪崩(三):降级,无奈的丢车保帅之举
降级有着熔断和限流所没有的优点,它们之间相互配合和补充,能够最大限度地保障系统的稳定性水平。
-
12|雪崩(四):扩容,没有用钱解决不了的问题
云原生系统的核心标志是,能否利用公有云或私有云进行弹性扩容。
-
13|可观测性(一):如何监控一个复杂的分布式系统?
监控是可观测性的一部分,可观测性是监控的扩展和进化。
-
14|可观测性(二):如何设计一个高效的告警系统?
信噪比、覆盖率和转交率,可以评估一个告警系统是否高效。
-
15|故障(一):预案管理竟然能让被动故障自动恢复?
通过增加一个中间层来进行调度,可以达到快速恢复故障的目的。
-
16|故障(二):变更管理,解决主动故障的高效思维方式
如果业务系统没有发生迭代变化,就不会发生主动故障。
-
期中测试|IM 系统设计实战
今天我们就来个期中测试,实际考察一下你对分布式计算系统的理解,以及对所学知识的应用情况。
-
期中测试答案|这些问题你都答对了吗?
本节课为期中测试解析,将详细解答如何依据业务和架构的需求来设计一个 IM 系统。
-
17|分片(一):如何选择最适合的水平分片方式?
如何通过“分片”技术,突破单机存储和性能瓶颈,让分布式系统的计算和存储能力可以线性扩展。
-
18|分片(二):垂直分片和混合分片的 trade-off
垂直水平分片策略是垂直分片策略的水平扩容版本,水平垂直分片策略是水平分片策略和垂直分片策略的结合版本。
-
19|复制(一):主从复制从副本的数据可以读吗?
在分布式系统中,为了实现数据的高可用性,我们只能通过数据复制将数据保存多个副本。
-
20|复制(二):多主复制的多主副本同时修改了怎么办?
异步模式的多主复制有多个主副本可以独立写入的优点,但是也会在一定程度上降低系统的一致性。
-
21|复制(三):最早的数据复制方式竟然是无主复制?
无主复制由于写入不依赖主节点,所以在主节点故障时,不会出现不可用的情况
-
22|事务(一):一致性,事务的集大成者
一致性是事务的集大成者。
-
23|事务(二):原子性,对应用层提供的完美抽象
原子性是一个非常完美的抽象,因为它对应用程序,屏蔽了分布式系统中部分失败的问题。
-
24|事务(三):隔离性,正确与性能之间权衡的艺术
事务并发执行的问题,即事务的隔离性。
-
25|事务(四):持久性,吃一碗粉就付一碗粉的钱
在机器突然断电、崩溃等异常情况下,如何保障已经成功的事务数据不会丢失,即事务的持久性。
-
26|一致性与共识(一):数据一致性都有哪些级别?
从强到弱依次介绍四种经典的一致性模型。
-
27|一致性与共识(二):它们是鸡生蛋还是蛋生鸡?
通过共识算法,我们可以实现高可用的线性一致性,但是共识算法不是线性一致性的必要条件。
-
28|一致性与共识(三):共识与事务之间道不明的关系
事务可以理解为对多个数据操作的一致性问题。
-
29|分布式计算技术的发展史:从单进程服务到 Service Mesh
Service Mesh 是分布式业务系统中代表未来的架构。
-
30|分布式存储技术的发展史:从 ACID 到 NewSQL
在技术的发展过程中,没有完美的架构,只有完美的 trade-off,取舍永远是最关键的因素。
-
结束语 |在分布式技术的大潮流中自由冲浪吧!
带上主动学习和精读学习的习惯,开启你自由冲浪的生活吧!
-
期末测试|来赴一场满分之约吧!
来赴一场满分之约吧!
-
课后彩蛋|完整版思考题答案
24道课后思考题答案合集,希望能给你带来帮助!
课程介绍
你将获得 高效、系统的分布式系统学习路径 30+ 常见分布式业务场景串联实战 搭建大规模分布式系统的实用指南 10 年分布式领域专家的高效思维方法 讲师介绍 课程介绍...你将获得
- 高效、系统的分布式系统学习路径
- 30+ 常见分布式业务场景串联实战
- 搭建大规模分布式系统的实用指南
- 10 年分布式领域专家的高效思维方法
讲师介绍
课程介绍
对于大多数同学来说,分布式系统入门容易,但是想要系统掌握和深入却很难,总是不得不面对这样几个问题:
- 分布式技术的历史、现在和未来,应该如何比较和分析?
- 如何深入理解分布式技术原理?
- 如何将分布式技术原理更好地应用于工作中?
- 如何打破自己对分布式系统的认知壁垒?
这些问题,都是从初级工程师走向进阶的路标。
为此,我们邀请到在分布式领域深耕十年的专家陈现麟老师,他将结合多数学习者的痛点,为你提供一条高效且系统的分布式系统学习路径。同时他也将自己对于分布式系统的经验和认知,融入到每一个知识点里,通过场景案例、原理分析、实践探索、思考总结等相结合的方式,带你描绘出自己的网状知识体系。

课程模块设计
整个专栏共分为四个模块:
概述篇:讨论分布式系统为什么会产生,产生后解决了什么问题,又带来了哪些新问题,会遇到哪些方面的挑战。这部分内容围绕分布式系统的脉络和关键点展开,将为你接下来的学习规划具体的学习目标和路径。
分布式计算篇:从单机系统演进到分布性系统,引入新的问题的角度,在技术原理层面讨论并解决这些问题。学习后你就可以知道在系统设计层面应该如何取舍,因为结合了业务场景设计高频知识点,所以学习难度低。
分布式存储篇:进阶篇,从简单到复杂去讨论数据分片、数据复制、分布式事务和一致性等相关的知识,这部分内容会提升你在工作中做架构设计以及思考的深度和广度。
总结篇:学习分布式系统的发展历程和未来趋势,从分布式计算的角度,讨论分布式系统是怎么从单机系统演进到 Service Mesh 的;从分布式存储的角度,讨论分布式系统是怎么从单机系统的 ACID 演进到 NewSQL 的,为你继续深入学习提供路线指引。
课程目录

适合人群
偏入门、后端开发经验较少或没有接触过大规模分布式系统的开发者,对分布式系统感兴趣,想转行,但是缺少理论知识以及工作经验的用户。