GitHub 中文社区
回车: Github搜索    Shift+回车: Google搜索
论坛
排行榜
趋势
登录

©2025 GitHub中文社区论坛GitHub官网网站地图GitHub官方翻译

  • X iconGitHub on X
  • Facebook iconGitHub on Facebook
  • Linkedin iconGitHub on LinkedIn
  • YouTube iconGitHub on YouTube
  • Twitch iconGitHub on Twitch
  • TikTok iconGitHub on TikTok
  • GitHub markGitHub’s organization on GitHub
donnemartin

donnemartin / system-design-primer

星标306.58 k
复刻50.67 k

学习如何设计大型系统


问题
 
Loading

关于

Learn how to design large-scale systems. Prep for the system design interview. Includes Anki flashcards.

编程Developmentdesign系统设计systemdesign-patternsWebWeb appPython面试interview-practice
创建时间

2017-02-26

是否国产

否

  修改时间

2025-05-21T11:13:33Z


语言

  • Python98.0%
  • Shell2.0%


系统设计入门

中文翻译 • 繁體中文

该仓库目的是帮助开发者学习如何设计大型系统,以及为系统设计的面试做准备。

目录摘要

  • 性能与拓展性
  • 延迟与吞吐量
  • 可用性与一致性
    • CAP 理论
    • 弱一致性
    • 最终一致性
    • 强一致性
  • 可用模式
  • 域名系统
  • CDN
  • 负载均衡器
  • 反向代理
  • 数据库
    • 关系型数据库管理系统
      • Master-slave 复制集
      • Master-master 复制集
      • SQL 调优
    • NoSQL
    • SQL 还是 NoSQL
  • 缓存
  • 异步
  • 通讯
    • 传输控制协议(TCP)
    • 用户数据报协议(UDP)
    • 远程控制调用协议(RPC)
    • 表述性状态转移(REST)
  • 安全

同时该项目还包含了系统设计相关面试题并附解答方案

  • 如何设计一个类似Bit.ly、Pastebin.com这样的域名缩短器
  • 如何设计 Twitter 时间线和搜索 (或者 Facebook feed 和搜索)
  • 如何设计一个网页爬虫
  • 如何设计 Mint.com
  • 如何为一个社交网络设计数据结构
  • 如何为搜索引擎设计一个 key-value 储存
  • 如何通过分类特性设计亚马逊的销售排名
  • 如何在亚马逊上设计一个百万用户级别的系统

此内容由GitHub中文社区编辑, 原始内容请前往GitHub查看README


0 条讨论

登录后发表评论

donnemartin 的其他开源项目

Donne Martin
interactive-coding-challenges
Donne Martin@donnemartin

#面试#120+ interactive Python coding interview challenges (algorithms and data structures). Includes Anki flashcards.

Python算法数据结构Development编程
Python30.43 k
1 年前
Donne Martin
data-science-ipython-notebooks
Donne Martin@donnemartin

#计算机科学#Python 数据科学学习笔记:深度学习 (TensorFlow, Theano, Caffe, Keras), scikit-learn, Kaggle, 大数据 (Spark, Hadoop MapReduce, HDFS), matplotlib, pandas, NumPy, SciPy, Python 核心, AWS, Linux命令

Python机器学习深度学习数据科学big-data
Python28.28 k
1 年前
Donne Martin
awesome-aws
Donne Martin@donnemartin

#计算机科学#A curated list of awesome Amazon Web Services (AWS) libraries, open source repos, guides, blogs, and other resources. Featuring the Fiery Meter of AWSome.

Amazon Web Servicescloudaws-sdkaws-clicloudformation
Python12.98 k
1 年前

您可能感兴趣的

kamranahmedse/developer-roadmap
Kamran Ahmed
developer-roadmap
Kamran Ahmed@kamranahmedse

#新手入门#开发人员学习路线图。

计算机科学路线图developer-roadmapfrontend-roadmapdevops-roadmap
TypeScript327.63 k
7 小时前
public-apis/public-apis
public-apis
public-apis
public-apis@public-apis

#学习与技能提升#免费公共 API 集合

APIpublic-apis免费apislist
Python351.68 k
1 个月前
CodeCrafters
build-your-own-x
CodeCrafters@codecrafters-io

#学习与技能提升#该仓库收集了上百篇技术教程,让你学会创建自己的的各种应用程序,如机器人、区块链、数据库、游戏等。

编程教程tutorial-codetutorial-exercises免费
Markdown387.68 k
2 个月前
免费电子书基金会
free-programming-books
免费电子书基金会@EbookFoundation

#学习与技能提升#📚 免费编程书籍集合,内含多国语言版本

教学bookslistHackathon-KitHacktoberfest
Python359.57 k
17 天前
jwasham/coding-interview-university
John Washam
coding-interview-university
John Washam@jwasham

#面试#Coding Interview University 一套完整的学习手册帮助自己准备 Google 的面试

计算机科学面试programming-interviewsstudy-plan数据结构
320.75 k
6 个月前
jlevy/the-art-of-command-line
Joshua Levy
the-art-of-command-line
Joshua Levy@jlevy

#学习与技能提升#命令行的艺术。

BashUnix文档LinuxmacOS
156.39 k
1 年前
freeCodeCamp.org
freeCodeCamp
freeCodeCamp.org@freeCodeCamp

#学习与技能提升#非盈利Web全栈编程学习网,知识覆盖HTML、CSS、JavaScript、Node.js、数据可视化、数据库等。

learn-to-codenonprofits编程Node.jsReact
TypeScript420.93 k1
12 小时前
MTDV
every-programmer-should-know
MTDV@mtdvio

每一位程序员都应该知道的技术知识

知识共享许可协议计算机科学educationalnovicecollection
87.34 k
10 个月前
yangshun/tech-interview-handbook
Yangshun Tay
tech-interview-handbook
Yangshun Tay@yangshun

#面试#程序员面试手册

面试coding-interviewsinterview-practiceinterview-preparation算法
TypeScript126.99 k
12 天前
project-based-learning
@practical-tutorials

#学习与技能提升#收集了一些基于项目,从零开始构建的编程教程

教程Projectbeginner-projectwebdevelopmentPython
232.02 k1
10 个月前
tensorflow
tensorflow
@tensorflow • 谷歌公司

#计算机科学#适合所有人的开源机器学习框架

Tensorflow机器学习Python深度学习深度神经网络
C++190.37 k
2 天前
sindresorhus/awesome
Sindre Sorhus
awesome
Sindre Sorhus@sindresorhus

#学习与技能提升#收集了一系列与计算机相关的的资源和链接

Awesome ListsunicornslistsHackathon-Kit
369.41 k
7 天前
MichaelCade/90DaysOfDevOps
90DaysOfDevOps
@MichaelCade

作者的90天DevOps学习之旅

DevOpsKubernetescontainersInfrastructure as codeTerraform
Shell28.07 k
14 天前
Airbnb 爱彼迎
javascript
Airbnb 爱彼迎@airbnb

#编码规范#JavaScript编程规范指南

JavaScriptESLintnaming-conventionsarrow-functionsstyle-guide
JavaScript146.89 k
6 个月前
GitHub
gitignore
GitHub@github

常用的 gitignore 文件模板

gitignoreGit
167.31 k
4 天前
Vinta Chen
awesome-python
Vinta Chen@vinta

Python精选

Awesome ListsPythoncollectionspython-librarypython-framework
Python246.94 k
10 个月前
grok-1
@xai-org

大模型Grok-1开源

Python50.29 k
10 个月前
system-design-101
@ByteByteGoHq

#面试#图文并茂使用通俗的语言解释复杂的系统。 帮助您准备系统设计面试。

Amazon Web Servicescloud-computingcoding-interviews计算机科学面试
73.31 k
2 个月前
Denys Dovhan
wtfjs
Denys Dovhan@denysdovhan

#学习与技能提升#一个有趣和棘手的 JavaScript 示例列表。

JavaScriptspecificationhandbooknotes
JavaScript36.48 k
3 个月前
trekhleb/javascript-algorithms
Oleksii Trekhleb
javascript-algorithms
Oleksii Trekhleb@trekhleb

#学习与技能提升#本仓库包含了多种基于 JavaScript 的算法与数据结构

JavaScript算法javascript-algorithms计算机科学
JavaScript191.54 k
4 个月前