后端开发者的系统设计
系统设计是决定软件组件如何大规模协同工作的学科——在编写任何应用代码之前,选择合适的数据库、通信协议、缓存层和部署拓扑。本课程涵盖全面内容,从每个后端工程师需要了解的第一性原理,到处理数百万请求的生产系统中使用的云原生和微服务模式。
你将学到什么
你将学习可扩展系统的核心词汇:数据存储策略、API 设计和服务间通信。你将学习高级缓存和 CDN 架构、设计阶段的安全考虑,以及高可用性和可靠性保证背后的权衡。后续课程涵盖微服务分解、云原生设计模式,以及将能够应对流量激增的系统与无法应对的系统区分开来的性能优化技术。该课程以真实案例研究结尾,将每个概念与具体的、可识别的系统相关联。
学习路径
十二门课程跨越 A1 到 C2 级别。第一门课程在初级水平介绍系统设计原则;第二和第三门课程构建核心后端组件和可扩展性基础。从 B2 开始,重点变得更加明确:高级数据存储策略、API 设计和服务间通信、高级缓存和 CDN 以及系统设计中的安全。最后四门 C1 课程涵盖高可用性、微服务架构、性能优化和云原生模式。该课程以 C2 级别的真实系统设计案例研究结尾,你将把整个课程应用于真实分布式系统中的问题。
它如何工作
每门课程分为短小精悍的课程,围绕互动练习和基于场景的问题构建。内置的 AI 导师在上下文中回答问题,这样你可以不断前进,无需切换标签页。由于系统设计本质上是概念性的,课程强调决策推理——为什么在特定约束下一种方法优于另一种方法——而不是死记硬背。