@_jaydeepkarale: 如果你正在准备系统设计面试,这个仓库就是一座金矿 https://github.com/liquidslr/system-design-…
摘要
一条推文重点介绍了一个GitHub仓库,其中包含基于Alex Xu书籍的全面系统设计面试笔记,涵盖限流、一致性哈希、键值存储等主题。
查看缓存全文
缓存时间: 2026/08/12 12:24
如果你正在准备系统设计面试,这个仓库就是一座金矿。https://github.com/liquidslr/system-design-notes…
liquidslr/system-design-notes
来源:https://github.com/liquidslr/system-design-notes
系统设计面试——内幕指南(第1卷和第2卷)
(https://bytebytego.com/courses/system-design-interview) 这些笔记基于《系统设计面试》一书——第1卷和第2卷(第2版)(https://www.goodreads.com/book/show/54109255-system-design-interview-an-insider-s-guide)
在此查看笔记:https://pagefy.io/system-design/system-design-interview-by-alex-xu
**注意:**这些笔记仍在完善中。
- 第1章 - 从零扩展到百万用户
- 第2章 - 粗略估算
- 第3章 - 系统设计面试的框架
- 第4章 - 设计限流器
- 第5章 - 设计一致性哈希
- 第6章 - 设计键值存储
- 第7章 - 设计分布式系统中的唯一ID生成器
- 第8章 - 设计短网址服务
- 第9章 - 设计网络爬虫
- 第10章 - 设计通知系统
- 第11章 - 设计信息流系统
- 第12章 - 设计聊天系统
- 第13章 - 设计搜索自动补全系统
- 第14章 - 设计 YouTube
- 第15章 - 设计 Google Drive
- 第16章 - 邻近位置服务
- 第17章 - 附近好友
- 第18章 - 设计 Google Maps
- 第19章 - 分布式消息队列
- 第20章 - 指标监控与告警系统
- 第21章 - 广告点击事件聚合
- 第22章 - 酒店预订系统
- 第23章 - 分布式电子邮件服务
- 第24章 - 类S3对象存储
- 第25章 - 实时游戏排行榜
- 第26章 - 支付系统
- 第27章 - 数字钱包
- 第28章 - 证券交易所
其他资源
限流
- 熔断器算法 (https://martinfowler.com/bliki/CircuitBreaker.html)
- Uber 限流器 (https://github.com/uber-go/ratelimit/blob/master/ratelimit.go)
一致性哈希
- 一致性哈希 (https://tom-e-white.com/2007/11/consistent-hashing.html)
- CS168: 引言与一致性哈希:
- Apache Cassandra (http://www.cs.cornell.edu/Projects/ladis2009/papers/Lakshman-ladis2009.PDF)
- Discord 的扩展 (https://blog.discord.com/scaling-elixir-f9b8e1e7c29b)
- Google Maglev (https://static.googleusercontent.com/media/research.google.com/en//pubs/archive/44824.pdf)
键值存储
- Amazon Dynamo (https://www.allthingsdistributed.com/files/amazon-dynamo-sosp2007.pdf)
- Cassandra 架构 (https://docs.datastax.com/en/archived/cassandra/3.0/cassandra/architecture/archIntro.html)
- Google BigTable 架构 (https://static.googleusercontent.com/media/research.google.com/en//archive/bigtable-osdi06.pdf)
- Amazon Dynamo DB 内部原理 (https://www.allthingsdistributed.com/2007/10/amazons_dynamo.html)
- Amazon Dynamo DB 中的设计模式 (https://www.youtube.com/watch?v=HaEPXoXVf2k)
- Amazon Dynamo DB 内部原理 (https://www.youtube.com/watch?v=yvBR71D0nAQ)
唯一ID生成器
- 票据服务器:分布式唯一主键的廉价实现 (https://code.flickr.net/2010/02/08/ticket-servers-distributed-unique-primary-keys-on-the-cheap)
- Snowflake (https://blog.twitter.com/engineering/en_us/a/2010/announcing-snowflake.html)
网络爬虫
- 网络爬取 (http://infolab.stanford.edu/~olston/publications/crawling_survey.pdf)
- Google 动态渲染 (https://developers.google.com/search/docs/guides/dynamic-rendering)
聊天系统
- Discord 如何存储数十亿条消息 (https://discord.com/blog/how-discord-stores-billions-of-messages)
- Flannel:让 Slack 实现扩展的应用层边缘缓存 (https://slack.engineering/flannel-an-application-level-edge-cache-to-make-slack-scale/)
搜索自动补全
- 我们如何构建 Prefixy (https://medium.com/@prefixyteam/how-we-built-prefixy-a-scalable-prefix-search-service-for-powering-autocomplete-c20f98e2eff1)
- 前缀哈希树 (https://people.eecs.berkeley.edu/~sylvia/papers/pht.pdf)
YouTube
- YouTube 架构 (http://highscalability.com/youtube-architecture)
- YouTube 的可扩展性(2012) (https://www.youtube.com/watch?v=w5WVu624fY8)
- 大规模视频转码 (https://www.egnyte.com/blog/2018/12/transcoding-how-we-serve-videos-at-scale/)
- Facebook 视频广播 (https://engineering.fb.com/ios/under-the-hood-broadcasting-live-video-to-millions/)
- Netflix 大规模视频编码 (https://netflixtechblog.com/high-quality-video-encoding-at-scale-d159db052746)
- Netflix 基于镜头的编码 (https://netflixtechblog.com/optimized-shot-based-encodes-now-streaming-4b9464204830)
Google Drive
- 差分同步 (https://neil.fraser.name/writing/sync/)
- 差分同步视频 (https://www.youtube.com/watch?v=S2Hp_1jqpY8)
- 我们如何扩展 Dropbox (https://www.youtube.com/watch?v=PE4gwstWhmc&feature=youtu.be)
相似文章
@tom_doerr:基于畅销指南的系统设计面试笔记 https://github.com/liquidslr/system-design-notes…
一个 GitHub 仓库,包含基于 Alex Xu 畅销书的综合系统设计面试笔记,涵盖扩展性、一致性哈希和分布式系统等主题。
@heynavtoor: 亚历克斯·徐的《系统设计面试》是技术招聘中最受推荐的书。第1卷:亚马逊上39.99美元。第2卷:4……
一位AWS工程师创建了免费的、结构化的笔记,总结了亚历克斯·徐的《系统设计面试》两卷的内容,可在GitHub和Pagefy.io网站上获取。
donnemartin/system-design-primer
一个开源的入门指南,整理了系统设计概念,提供学习指南、Anki 闪卡和练习面试题,帮助工程师构建大规模系统并准备系统设计面试。
@0xlelouch_: 我依然会推荐给在职开发者的十大系统设计资源:1) 《设计数据密集型应用》(Kleppmann)——重新…
一条推特线程,列出了十大系统设计资源,包括书籍、博客和框架,并附有Martin Fowler网站的链接以供进一步阅读。
@AvinashSingh_20:掌握 DSA 的 10 个 GitHub 仓库!1- Coding Interview University - http://github.com/jwasham/coding-interview-unive…
一条推文,分享了 10 个用于掌握数据结构和算法的 GitHub 仓库,包括 Coding Interview University、The Algorithms、JavaScript Algorithms 以及其他面试准备资源。