这是什么?
这是一份免费的、精心整理的系统设计资源合集,包括核心概念、网络与 API 基础、数据库与缓存基础、分布式系统模式,以及大量面试题、书籍、课程和论文,全部面向系统设计面试准备。
这是教程、工具,还是只是一份链接列表?
这是一个 Awesome 风格的精选索引:一个 README 文件,按主题分节,用项目符号列出指向文章、视频、课程和论文的链接,而不是原创的文字内容。
这份列表是怎么组织的?
列表分为:核心概念、网络基础、API 基础、数据库与缓存基础、分布式系统、架构模式、权衡取舍,然后是系统设计面试题(分为简单、中等、困难三档),最后是课程、书籍和必读论文。
新手应该从哪里开始?
README 在深入概念列表之前,会引导新读者先阅读一篇专门的入门文章,并建议按从简单到困难的顺序练习面试题。
这份列表适合谁?
准备系统设计面试的软件工程师,既包括学习核心概念的初学者,也包括要练习 Uber、Netflix 等完整设计题的求职者。
它涵盖哪些面试题?
提供数十道经典设计题,按难度分类:简单档包括短链接服务和限流器;中等档包括 WhatsApp、Netflix 和 Twitter;困难档包括 Uber、Google Docs 和 Google Maps。
除了文章,还有别的内容吗?
有。它还链接到完整课程、一份电子简报、一本推荐书籍《Designing Data-Intensive Applications》、YouTube 频道,以及经典的分布式系统论文,如 Google File System 和 Dynamo。
有没有真实公司的工程案例?
有。“必读工程文章”一节链接到一些文章,例如 Discord 如何存储数万亿条消息、Airbnb 如何防止重复支付,以及 Slack 的实时消息架构。
为什么主要语言显示为 Java?
仓库本身的内容只是 Markdown 链接,没有任何代码;Java 这个标签很可能来自仓库里某个无关或极少量的文件,而不是实际的实现代码。
What are similar projects?
system-design-academy, system-design, awesome-scalability, architect-awesome, awesome-software-architecture, professional-programming, Back-End-Developer-Interview-Questions, awesome-system-design
Which topics is it in?
load-balancer, scalability, nosql, system-design, interview-questions, caching, interview, architecture, microservices, career, computer-science, sql