人人都能学编程
English 开始学习
专项 · 系统设计 免费阅读

系统设计教程

先估算负载,再做缓存、分片、限流和队列:这些是稳定系统的基本构件,每一个都亲手写代码、跑测试。

5 课约 8 小时 建议先学:Python 从零开始、数据结构与算法
边学边练

互动课是同样的内容,旁边多了一个编辑器:每个例子都能运行,小测验当场判对错,练习题提交马上判题。免费开始,不用注册。

开始互动课
1

规模与速度

估算负载和存储;用缓存加快读取。
1 粗略估算一个有一百万用户的应用需要多少台服务器?2 缓存怎么让一个慢吞吞的数据库用起来很快?
2

分摊负载

用一致性哈希分片,限流,安全地排队与重试。
3 负载均衡与一致性哈希怎么把数据分到很多台服务器上,又能在加一台时不乱套?4 限流怎么防止一个客户端把你的 API 淹没?5 队列、重试与幂等请求来得比你处理得还快时,会发生什么?