| route-pattern | /:user_id/:repository |
| route-controller | files |
| route-action | disambiguate |
| fetch-nonce | v2:44318854-21fa-52fc-4974-c0b7356779ba |
| current-catalog-service-hash | f3abb0cc802f3d7b95fc8762b94bdcb13bf39634c40c357301c4aa1d67a256fb |
| request-id | 82C4:1AB011:4C6AA85:67FEF80:697312F6 |
| html-safe-nonce | 33a664815ed7acbde6066cc448925ea92a6682082390d0353957c6944c1e4338 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiI4MkM0OjFBQjAxMTo0QzZBQTg1OjY3RkVGODA6Njk3MzEyRjYiLCJ2aXNpdG9yX2lkIjoiNDIwNzczNTM2OTUyNjA4ODQzOCIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 38597d0155be9728ab16d32f12f4af2438e62ee329fd07cb9d64f69e3adf9508 |
| hovercard-subject-tag | repository:146094594 |
| github-keyboard-shortcuts | repository,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | // |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/LearningJavaPython/system-design-primer-zh_CN |
| twitter:image | https://opengraph.githubassets.com/1336f4f61565a537b12dac50d5e18c9796038c88da7d1e047fbcbb204713035d/LearningJavaPython/system-design-primer-zh_CN |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/1336f4f61565a537b12dac50d5e18c9796038c88da7d1e047fbcbb204713035d/LearningJavaPython/system-design-primer-zh_CN |
| og:image:alt | system-design-primer 的中文翻译,原仓库 https://github.com/donnemartin/system-design-primer - LearningJavaPython/system-design-primer-zh_CN |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| hostname | github.com |
| expected-hostname | github.com |
| None | 44ab3188c1dcfe3be0f9c3feca2e04e14fb79f120939ce2395e4f15ab96ec1d4 |
| turbo-cache-control | no-preview |
| go-import | github.com/LearningJavaPython/system-design-primer-zh_CN git https://github.com/LearningJavaPython/system-design-primer-zh_CN.git |
| octolytics-dimension-user_id | 9246634 |
| octolytics-dimension-user_login | LearningJavaPython |
| octolytics-dimension-repository_id | 146094594 |
| octolytics-dimension-repository_nwo | LearningJavaPython/system-design-primer-zh_CN |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | true |
| octolytics-dimension-repository_parent_id | 85388920 |
| octolytics-dimension-repository_parent_nwo | wwj718/system-design-primer-zh_CN |
| octolytics-dimension-repository_network_root_id | 85388920 |
| octolytics-dimension-repository_network_root_nwo | wwj718/system-design-primer-zh_CN |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | a5e2b48bd1260476599758f5d253b5d24092ab84 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
| Skip to content | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#start-of-content |
|
| https://patch-diff.githubusercontent.com/ |
|
Sign in
| https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
| GitHub CopilotWrite better code with AI | https://github.com/features/copilot |
| GitHub SparkBuild and deploy intelligent apps | https://github.com/features/spark |
| GitHub ModelsManage and compare prompts | https://github.com/features/models |
| MCP RegistryNewIntegrate external tools | https://github.com/mcp |
| ActionsAutomate any workflow | https://github.com/features/actions |
| CodespacesInstant dev environments | https://github.com/features/codespaces |
| IssuesPlan and track work | https://github.com/features/issues |
| Code ReviewManage code changes | https://github.com/features/code-review |
| GitHub Advanced SecurityFind and fix vulnerabilities | https://github.com/security/advanced-security |
| Code securitySecure your code as you build | https://github.com/security/advanced-security/code-security |
| Secret protectionStop leaks before they start | https://github.com/security/advanced-security/secret-protection |
| Why GitHub | https://github.com/why-github |
| Documentation | https://docs.github.com |
| Blog | https://github.blog |
| Changelog | https://github.blog/changelog |
| Marketplace | https://github.com/marketplace |
| View all features | https://github.com/features |
| Enterprises | https://github.com/enterprise |
| Small and medium teams | https://github.com/team |
| Startups | https://github.com/enterprise/startups |
| Nonprofits | https://github.com/solutions/industry/nonprofits |
| App Modernization | https://github.com/solutions/use-case/app-modernization |
| DevSecOps | https://github.com/solutions/use-case/devsecops |
| DevOps | https://github.com/solutions/use-case/devops |
| CI/CD | https://github.com/solutions/use-case/ci-cd |
| View all use cases | https://github.com/solutions/use-case |
| Healthcare | https://github.com/solutions/industry/healthcare |
| Financial services | https://github.com/solutions/industry/financial-services |
| Manufacturing | https://github.com/solutions/industry/manufacturing |
| Government | https://github.com/solutions/industry/government |
| View all industries | https://github.com/solutions/industry |
| View all solutions | https://github.com/solutions |
| AI | https://github.com/resources/articles?topic=ai |
| Software Development | https://github.com/resources/articles?topic=software-development |
| DevOps | https://github.com/resources/articles?topic=devops |
| Security | https://github.com/resources/articles?topic=security |
| View all topics | https://github.com/resources/articles |
| Customer stories | https://github.com/customer-stories |
| Events & webinars | https://github.com/resources/events |
| Ebooks & reports | https://github.com/resources/whitepapers |
| Business insights | https://github.com/solutions/executive-insights |
| GitHub Skills | https://skills.github.com |
| Documentation | https://docs.github.com |
| Customer support | https://support.github.com |
| Community forum | https://github.com/orgs/community/discussions |
| Trust center | https://github.com/trust-center |
| Partners | https://github.com/partners |
| GitHub SponsorsFund open source developers | https://github.com/sponsors |
| Security Lab | https://securitylab.github.com |
| Maintainer Community | https://maintainers.github.com |
| Accelerator | https://github.com/accelerator |
| Archive Program | https://archiveprogram.github.com |
| Topics | https://github.com/topics |
| Trending | https://github.com/trending |
| Collections | https://github.com/collections |
| Enterprise platformAI-powered developer platform | https://github.com/enterprise |
| GitHub Advanced SecurityEnterprise-grade security features | https://github.com/security/advanced-security |
| Copilot for BusinessEnterprise-grade AI features | https://github.com/features/copilot/copilot-business |
| Premium SupportEnterprise-grade 24/7 support | https://github.com/premium-support |
| Pricing | https://github.com/pricing |
| Search syntax tips | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
| documentation | https://docs.github.com/search-github/github-code-search/understanding-github-code-search-syntax |
|
Sign in
| https://patch-diff.githubusercontent.com/login?return_to=https%3A%2F%2Fgithub.com%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
|
Sign up
| https://patch-diff.githubusercontent.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E&source=header-repo&source_repo=LearningJavaPython%2Fsystem-design-primer-zh_CN |
| Reload | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
| Reload | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
| Reload | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
|
LearningJavaPython
| https://patch-diff.githubusercontent.com/LearningJavaPython |
| system-design-primer-zh_CN | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
| wwj718/system-design-primer-zh_CN | https://patch-diff.githubusercontent.com/wwj718/system-design-primer-zh_CN |
|
Notifications
| https://patch-diff.githubusercontent.com/login?return_to=%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
|
Fork
0
| https://patch-diff.githubusercontent.com/login?return_to=%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
|
Star
0
| https://patch-diff.githubusercontent.com/login?return_to=%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
| https://github.com/donnemartin/system-design-primer | https://github.com/donnemartin/system-design-primer |
|
View license
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/LICENSE.txt |
|
0
stars
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/stargazers |
|
74
forks
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/forks |
|
Branches
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/branches |
|
Tags
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tags |
|
Activity
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/activity |
|
Star
| https://patch-diff.githubusercontent.com/login?return_to=%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
|
Notifications
| https://patch-diff.githubusercontent.com/login?return_to=%2FLearningJavaPython%2Fsystem-design-primer-zh_CN |
|
Code
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
|
Pull requests
0
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/pulls |
|
Actions
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/actions |
|
Projects
0
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/projects |
|
Wiki
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/wiki |
|
Security
0
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/security |
|
Insights
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/pulse |
|
Code
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
|
Pull requests
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/pulls |
|
Actions
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/actions |
|
Projects
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/projects |
|
Wiki
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/wiki |
|
Security
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/security |
|
Insights
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/pulse |
| Branches | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/branches |
| Tags | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tags |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/branches |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tags |
| 124 Commits | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/commits/master/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/commits/master/ |
| resources/flash_cards | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tree/master/resources/flash_cards |
| resources/flash_cards | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tree/master/resources/flash_cards |
| solutions | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tree/master/solutions |
| solutions | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/tree/master/solutions |
| .gitattributes | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/.gitattributes |
| .gitattributes | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/.gitattributes |
| .gitignore | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/.gitignore |
| .gitignore | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/.gitignore |
| CONTRIBUTING.md | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/CONTRIBUTING.md |
| CONTRIBUTING.md | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/CONTRIBUTING.md |
| LICENSE.txt | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/LICENSE.txt |
| LICENSE.txt | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/LICENSE.txt |
| README.md | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/README.md |
| README.md | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/blob/master/README.md |
| README | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
| Contributing | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
| License | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#系统设计入门 |
| https://camo.githubusercontent.com/9a6878115d96fd835722945dade2e0572cb499e33049351a48836d9ebfce984a/687474703a2f2f692e696d6775722e636f6d2f6a6a3341354e382e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#动机 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#学习如何设计大型系统 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#从开源社区学习 |
| 贡献 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#为系统设计面试做准备 |
| 学习指导 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#study-guide |
| 如何接近系统设计面试问题 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#how-to-approach-a-system-design-interview-question |
| 有解决方案的系统设计面试问题 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#system-design-interview-questions-with-solutions |
| 有解决方案的面向对象类设计面试问题 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#object-oriented-design-interview-questions-with-solutions |
| 其他系统设计面试问题 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#additional-system-design-interview-questions |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#anki-快闪卡片anki-flashcards |
| https://camo.githubusercontent.com/a619cd685d679e317084a641ebcd0e281baae2fc117392dea9babc331654cf95/687474703a2f2f692e696d6775722e636f6d2f7a6443416b42332e706e67 |
| Anki flashcard decks | https://apps.ankiweb.net/ |
| 系统设计 deck | https://github.com/donnemartin/system-design-primer/blob/master/resources/flash_cards/System%20Design.apkg |
| 系统设计练习 deck | https://github.com/donnemartin/system-design-primer/blob/master/resources/flash_cards/System%20Design%20Exercises.apkg |
| 面向对象设计练习 deck | https://github.com/donnemartin/system-design-primer/blob/master/resources/flash_cards/OO%20Design.apkg |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#贡献 |
| 开发中 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#under-development |
| 贡献引导 | https://github.com/donnemartin/system-design-primer/blob/master/CONTRIBUTING.md |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#系统设计的主题索引 |
| https://camo.githubusercontent.com/8f8fc19354a4b656eea437befc34469f13c6b2ca232243f7ea46684582ce1248/687474703a2f2f692e696d6775722e636f6d2f6a7255424146372e706e67 |
| 系统设计主题:从这里开始 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#system-design-topics-start-here |
| 步骤1:观看关于可伸缩性的视频演讲 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-1-review-the-scalability-video-lecture |
| 步骤2:查看关于可伸缩性的文章 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-2-review-the-scalability-article |
| 下一步 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#next-steps |
| 性能vs可伸缩性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#performance-vs-scalability |
| 延迟vs吞吐量 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#latency-vs-throughput |
| 可用性vs一致性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#availability-vs-consistency |
| CAP定理 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cap-theorem |
| CP - 一致性 和 分区容忍性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cp---consistency-and-partition-tolerance |
| AP - 可用性 和 分区容忍性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#ap---availability-and-partition-tolerance |
| 一致性模式 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#consistency-patterns |
| 弱一致性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#weak-consistency |
| 最终一致性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#eventual-consistency |
| 强一致性 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#strong-consistency |
| 可用性模式 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#availability-patterns |
| 故障转移 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#fail-over |
| 备份 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#replication |
| 域名系统 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#domain-name-system |
| 内容分发网络 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#content-delivery-network |
| Push CDNs | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#push-cdns |
| Pull CDNs | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#pull-cdns |
| 负载均衡器 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#load-balancer |
| 主动 - 被动 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#active-passive |
| 主动 - 主动 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#active-active |
| 第4层负载均衡 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#layer-4-load-balancing |
| 第7层负载均衡 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#layer-7-load-balancing |
| 横向扩展 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#horizontal-scaling |
| 反向代理(web服务器) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#reverse-proxy-web-server |
| 负载均衡 vs 反向代理 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#load-balancer-vs-reverse-proxy |
| 应用层 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#application-layer |
| 微服务 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#microservices |
| 服务发现 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#service-discovery |
| 数据库 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#database |
| 关系数据库管理系统(RDBMS) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#relational-database-management-system-rdbms |
| 主-从备份 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-slave-replication |
| 主-主备份 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-master-replication |
| 联邦 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#federation |
| 分片 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sharding |
| 非标准化 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#denormalization |
| SQL调优 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sql-tuning |
| NoSQL | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#nosql |
| 键值存储 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#key-value-store |
| 文档存储 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#document-store |
| 宽列存储 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#wide-column-store |
| 图数据库 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#graph-database |
| SQL or NoSQL | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sql-or-nosql |
| 缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cache |
| 客户端缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#client-caching |
| CDN缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cdn-caching |
| Web 服务器 caching | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#web-server-caching |
| 数据库缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#database-caching |
| 应用缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#application-caching |
| 数据库查询级别缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#caching-at-the-database-query-level |
| 对象级别缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#caching-at-the-object-level |
| 何时更新缓存 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#when-to-update-the-cache |
| Cache-aside | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cache-aside |
| Write-through | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#write-through |
| Write-behind (write-back) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#write-behind-write-back |
| Refresh-ahead | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#refresh-ahead |
| 异步 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#asynchronism |
| 消息队列 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#message-queues |
| 任务队列 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#task-queues |
| 背压 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#back-pressure |
| 通讯 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#communication |
| 传输控制协议(TCP) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#transmission-control-protocol-tcp |
| 用户数据包协议(UDP) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#user-datagram-protocol-udp |
| 远程过程调用(RPC) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#remote-procedure-call-rpc |
| 表现层状态转化 (REST) | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#representational-state-transfer-rest |
| 安全 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#security |
| 附录 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#appendix |
| 两张表的力量 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#powers-of-two-table |
| 每个程序员都应该知道的延迟数 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#latency-numbers-every-programmer-should-know |
| 其他系统设计面试问题 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#additional-system-design-interview-questions |
| 现实世界的架构 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#real-world-architectures |
| 公司架构 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#company-architectures |
| 公司技术博客 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#company-engineering-blogs |
| 开发中 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#under-development |
| Credits | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#credits |
| 联系方式 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contact-info |
| License | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#license |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#学习指导 |
| https://camo.githubusercontent.com/892eab3214108c83b1a11d767de62f708312713c02a8bd2b7d1c0158fcf3222c/687474703a2f2f692e696d6775722e636f6d2f4f66566c6c65782e706e67 |
| System design topics | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#index-of-system-design-topics |
| Company engineering blogs | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#company-engineering-blogs |
| Real world architectures | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#real-world-architectures |
| How to approach a system design interview question | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#how-to-approach-a-system-design-interview-question |
| System design interview questions with solutions | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#system-design-interview-questions-with-solutions |
| Object-oriented design interview questions with solutions | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#object-oriented-design-interview-questions-with-solutions |
| Additional system design interview questions | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#additional-system-design-interview-questions |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#如何接近系统设计面试问题 |
| System design interview questions with solutions | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#system-design-interview-questions-with-solutions |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-1-outline-use-cases-constraints-and-assumptions |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-2-create-a-high-level-design |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-3-design-core-components |
| design a url shortening service | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md |
| MD5 | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md |
| Base62 | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-4-scale-the-design |
| principles of scalable system design | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#index-of-system-design-topics |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#back-of-the-envelope-calculations |
| Appendix | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#appendix |
| Use back of the envelope calculations | http://highscalability.com/blog/2011/1/26/google-pro-tip-use-back-of-the-envelope-calculations-to-choo.html |
| Powers of two table | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#powers-of-two-table |
| Latency numbers every programmer should know | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#latency-numbers-every-programmer-should-know |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading |
| How to ace a systems design interview | https://www.palantir.com/2011/10/how-to-rock-a-systems-design-interview/ |
| The system design interview | http://www.hiredintech.com/system-design |
| Intro to Architecture and Systems Design Interviews | https://www.youtube.com/watch?v=ZgdS0EUmn70 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#system-design-interview-questions-with-solutions |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/twitter/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/web_crawler/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/mint/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/social_graph/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/query_cache/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/sales_rank/README.md |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/scaling_aws/README.md |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-pastebincom-or-bitly |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/pastebin/README.md |
| https://camo.githubusercontent.com/b23facc0dde97bef9b59fe498c3763410fab6462b63a74317749b41be91be80b/687474703a2f2f692e696d6775722e636f6d2f346564584730542e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-the-twitter-timeline-and-search-or-facebook-feed-and-search |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/twitter/README.md |
| https://camo.githubusercontent.com/8f8fc19354a4b656eea437befc34469f13c6b2ca232243f7ea46684582ce1248/687474703a2f2f692e696d6775722e636f6d2f6a7255424146372e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-a-web-crawler |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/web_crawler/README.md |
| https://camo.githubusercontent.com/8a924051579362505318991c0590157617ed59f492ef631c4f74da9295dc9d83/687474703a2f2f692e696d6775722e636f6d2f625778507451412e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-mintcom |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/mint/README.md |
| https://camo.githubusercontent.com/4bcc3de95e12c0f4b3b06b44461b395427e1f79d4b0e35336a13bcb93ac70395/687474703a2f2f692e696d6775722e636f6d2f563571353776552e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-the-data-structures-for-a-social-network |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/social_graph/README.md |
| https://camo.githubusercontent.com/a43c3c296317d6d718cbbfff4e03dffb9049ff36eab0ddba3b6c27940a52bb6d/687474703a2f2f692e696d6775722e636f6d2f636443763567372e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-a-key-value-store-for-a-search-engine |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/query_cache/README.md |
| https://camo.githubusercontent.com/47dc29ab7e62ca4eb179022db3f7d9d57eaa113ea57e63446310688e88a1bd98/687474703a2f2f692e696d6775722e636f6d2f346a39396d68652e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-amazons-sales-ranking-by-category-feature |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/sales_rank/README.md |
| https://camo.githubusercontent.com/84ed50901741e8dccda500108ec7f9b06ed2f928d6a5164df58b1958a6ce7dff/687474703a2f2f692e696d6775722e636f6d2f4d7a45785030362e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#design-a-system-that-scales-to-millions-of-users-on-aws |
| View exercise and solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/system_design/scaling_aws/README.md |
| https://camo.githubusercontent.com/9a6878115d96fd835722945dade2e0572cb499e33049351a48836d9ebfce984a/687474703a2f2f692e696d6775722e636f6d2f6a6a3341354e382e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#object-oriented-design-interview-questions-with-solutions |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/hash_table/hash_map.ipynb |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/lru_cache/lru_cache.ipynb |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/call_center/call_center.ipynb |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/deck_of_cards/deck_of_cards.ipynb |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/parking_lot/parking_lot.ipynb |
| Solution | https://github.com/donnemartin/system-design-primer/blob/master/solutions/object_oriented_design/online_chat/online_chat.ipynb |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#system-design-topics-start-here |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-1-review-the-scalability-video-lecture |
| Scalability Lecture at Harvard | https://www.youtube.com/watch?v=-W9F__D3oY4 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#step-2-review-the-scalability-article |
| Scalability | http://www.lecloud.net/tagged/scalability |
| Clones | http://www.lecloud.net/post/7295452622/scalability-for-dummies-part-1-clones |
| Databases | http://www.lecloud.net/post/7994751381/scalability-for-dummies-part-2-database |
| Caches | http://www.lecloud.net/post/9246290032/scalability-for-dummies-part-3-cache |
| Asynchronism | http://www.lecloud.net/post/9699762917/scalability-for-dummies-part-4-asynchronism |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#next-steps |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#performance-vs-scalability |
| 1 | http://www.allthingsdistributed.com/2006/03/a_word_on_scalability.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-1 |
| A word on scalability | http://www.allthingsdistributed.com/2006/03/a_word_on_scalability.html |
| Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#latency-vs-throughput |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-2 |
| Understanding latency vs throughput | https://community.cadence.com/cadence_blogs_8/b/sd/archive/2010/09/13/understanding-latency-vs-throughput |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#availability-vs-consistency |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cap-theorem |
| https://camo.githubusercontent.com/f19eb1d203c7bbba15cee483755f4ba0edbaab76847343c86a1a5fe50c7acc2a/687474703a2f2f692e696d6775722e636f6d2f62674c4d4932752e706e67 |
| Source: CAP theorem revisited | http://robertgreiner.com/2014/08/cap-theorem-revisited |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cp---consistency-and-partition-tolerance |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#ap---availability-and-partition-tolerance |
| eventual consistency | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#eventual-consistency |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-3 |
| CAP theorem revisited | http://robertgreiner.com/2014/08/cap-theorem-revisited/ |
| A plain english introduction to CAP theorem | http://ksat.me/a-plain-english-introduction-to-cap-theorem/ |
| CAP FAQ | https://github.com/henryr/cap-faq |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#consistency-patterns |
| CAP theorem | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cap-theorem |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#weak-consistency |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#eventual-consistency |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#strong-consistency |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-4 |
| Transactions across data centers | http://snarfed.org/transactions_across_datacenters_io.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#availability-patterns |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#fail-over |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#active-passive |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#active-active |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-failover |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#replication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-slave-and-master-master |
| Database | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#database |
| Master-slave replication | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-slave-replication |
| Master-master replication | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-master-replication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#domain-name-system |
| https://camo.githubusercontent.com/a8eb107bfad780ee6a36c437e8af2b3ca94942dc62bc6fbc9466e7cc37f6f179/687474703a2f2f692e696d6775722e636f6d2f494f794c6a34692e6a7067 |
| Source: DNS security presentation | http://www.slideshare.net/srikrupa5/dns-security-presentation-issa |
| www.example.com | http://www.example.com |
| time to live (TTL) | https://en.wikipedia.org/wiki/Time_to_live |
| www.example.com | http://www.example.com |
| CloudFlare | https://www.cloudflare.com/dns/ |
| Route 53 | https://aws.amazon.com/route53/ |
| Weighted round robin | http://g33kinfo.com/info/archives/2657 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-dns |
| governments, ISPs, and large companies | http://superuser.com/questions/472695/who-controls-the-dns-servers/472729 |
| DDoS attack | http://dyn.com/blog/dyn-analysis-summary-of-friday-october-21-attack/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-5 |
| DNS architecture | https://technet.microsoft.com/en-us/library/dd197427(v=ws.10).aspx |
| Wikipedia | https://en.wikipedia.org/wiki/Domain_Name_System |
| DNS articles | https://support.dnsimple.com/categories/dns/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#content-delivery-network |
| https://camo.githubusercontent.com/a5ff6bafeb92d242d1e7f2953b95d275c7d6694c4045441bda7fcc3ff838309e/687474703a2f2f692e696d6775722e636f6d2f683954417547492e6a7067 |
| Source: Why use a CDN | https://www.creative-artworks.eu/why-use-a-content-delivery-network-cdn/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#push-cdns |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#pull-cdns |
| time-to-live (TTL) | https://en.wikipedia.org/wiki/Time_to_live |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-cdn |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-6 |
| Globally distributed content delivery | http://repository.cmu.edu/cgi/viewcontent.cgi?article=2112&context=compsci |
| The differences between push and pull CDNs | http://www.travelblogadvice.com/technical/the-differences-between-push-and-pull-cdns/ |
| Wikipedia | https://en.wikipedia.org/wiki/Content_delivery_network |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#load-balancer |
| https://camo.githubusercontent.com/6c572cf9651a0c35a89fa17a58c4fed6f5ecf6b96779505f5e52632e0f866fa2/687474703a2f2f692e696d6775722e636f6d2f6838316e39694b2e706e67 |
| Source: Scalable system design patterns | http://horicky.blogspot.com/2010/10/scalable-system-design-patterns.html |
| X.509 certificates | https://en.wikipedia.org/wiki/X.509 |
| active-passive | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#active-passive |
| active-active | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#active-active |
| Round robin or weighted round robin | http://g33kinfo.com/info/archives/2657 |
| Layer 4 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#layer-4-load-balancing |
| Layer 7 | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#layer-7-load-balancing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#layer-4-load-balancing |
| transport layer | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#communication |
| Network Address Translation (NAT) | https://www.nginx.com/resources/glossary/layer-4-load-balancing/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#layer-7-load-balancing |
| application layer | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#communication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#horizontal-scaling |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-horizontal-scaling |
| database | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#database |
| cache | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cache |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-load-balancer |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-7 |
| NGINX architecture | https://www.nginx.com/blog/inside-nginx-how-we-designed-for-performance-scale/ |
| HAProxy architecture guide | http://www.haproxy.org/download/1.2/doc/architecture.txt |
| Scalability | http://www.lecloud.net/post/7295452622/scalability-for-dummies-part-1-clones |
| Wikipedia | https://en.wikipedia.org/wiki/Load_balancing_(computing) |
| Layer 4 load balancing | https://www.nginx.com/resources/glossary/layer-4-load-balancing/ |
| Layer 7 load balancing | https://www.nginx.com/resources/glossary/layer-7-load-balancing/ |
| ELB listener config | http://docs.aws.amazon.com/elasticloadbalancing/latest/classic/elb-listener-config.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#reverse-proxy-web-server |
| https://camo.githubusercontent.com/56344cd9a407befa192ff55ffa991bfa5f7e89d900f9caa5286946f55532a605/687474703a2f2f692e696d6775722e636f6d2f6e3431417a66662e706e67 |
| Source: Wikipedia | https://upload.wikimedia.org/wikipedia/commons/6/67/Reverse_proxy_h2g2bob.svg |
| X.509 certificates | https://en.wikipedia.org/wiki/X.509 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#load-balancer-vs-reverse-proxy |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-reverse-proxy |
| failover | https://en.wikipedia.org/wiki/Failover |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-8 |
| Reverse proxy vs load balancer | https://www.nginx.com/resources/glossary/reverse-proxy-vs-load-balancer/ |
| NGINX architecture | https://www.nginx.com/blog/inside-nginx-how-we-designed-for-performance-scale/ |
| HAProxy architecture guide | http://www.haproxy.org/download/1.2/doc/architecture.txt |
| Wikipedia | https://en.wikipedia.org/wiki/Reverse_proxy |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#application-layer |
| https://camo.githubusercontent.com/cb8ee6e9acde170e3af8b857d3841a6cd2f74722006329bc6af8ea4c90c6df54/687474703a2f2f692e696d6775722e636f6d2f7942355359776d2e706e67 |
| Source: Intro to architecting systems for scale | http://lethain.com/introduction-to-architecting-systems-for-scale/#platform_layer |
| asynchronism | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#asynchronism |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#microservices |
| microservices | https://en.wikipedia.org/wiki/Microservices |
| 1 | https://smartbear.com/learn/api-design/what-are-microservices |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#service-discovery |
| Zookeeper | http://www.slideshare.net/sauravhaloi/introduction-to-apache-zookeeper |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-application-layer |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-9 |
| Intro to architecting systems for scale | http://lethain.com/introduction-to-architecting-systems-for-scale |
| Crack the system design interview | http://www.puncsky.com/blog/2016/02/14/crack-the-system-design-interview/ |
| Service oriented architecture | https://en.wikipedia.org/wiki/Service-oriented_architecture |
| Introduction to Zookeeper | http://www.slideshare.net/sauravhaloi/introduction-to-apache-zookeeper |
| Here's what you need to know about building microservices | https://cloudncode.wordpress.com/2016/07/22/msa-getting-started/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#database |
| https://camo.githubusercontent.com/b3255bae5d3f7d220eca795a1cf47fa97ec76b10fe5bd1b1fd0ab79edbb878a9/687474703a2f2f692e696d6775722e636f6d2f586b6d3543587a2e706e67 |
| Source: Scaling up to your first 10 million users | https://www.youtube.com/watch?v=vg5onp8TU6Q |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#relational-database-management-system-rdbms |
| transactions | https://en.wikipedia.org/wiki/Database_transaction |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-slave-replication |
| https://camo.githubusercontent.com/9e423a4e5f24b37c621acdf99b363934ab9e93896f255b17e34b80adac90db7a/687474703a2f2f692e696d6775722e636f6d2f4339696f47746e2e706e67 |
| Source: Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-master-slave-replication |
| Disadvantage(s): replication | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-replication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#master-master-replication |
| https://camo.githubusercontent.com/afb85334ee2c51829a92e7b63c332fe29576867f7b8939ddb21f6a65630a0212/687474703a2f2f692e696d6775722e636f6d2f6b7241484c47672e706e67 |
| Source: Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-master-master-replication |
| Disadvantage(s): replication | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-replication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-replication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-replication |
| Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| Multi-master replication | https://en.wikipedia.org/wiki/Multi-master_replication |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#federation |
| https://camo.githubusercontent.com/f69d8add6fa9aba8f1b219cb8fd93154e2ac9bde407aab61f139823c05e46a03/687474703a2f2f692e696d6775722e636f6d2f553371563333652e706e67 |
| Source: Scaling up to your first 10 million users | https://www.youtube.com/watch?v=vg5onp8TU6Q |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-federation |
| server link | http://stackoverflow.com/questions/5145637/querying-data-by-joining-two-tables-in-two-database-on-different-servers |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-federation |
| Scaling up to your first 10 million users | https://www.youtube.com/watch?v=vg5onp8TU6Q |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sharding |
| https://camo.githubusercontent.com/177af227a86b58ecf59512ac8f938325203b77cd8c2e697a39e92075c0aab2de/687474703a2f2f692e696d6775722e636f6d2f775538783549642e706e67 |
| Source: Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| federation | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#federation |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-sharding |
| consistent hashing | http://www.paperplanes.de/2011/12/9/the-magic-of-consistent-hashing.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-sharding |
| The coming of the shard | http://highscalability.com/blog/2009/8/6/an-unorthodox-approach-to-database-design-the-coming-of-the.html |
| Shard database architecture | https://en.wikipedia.org/wiki/Shard_(database_architecture) |
| Consistent hashing | http://www.paperplanes.de/2011/12/9/the-magic-of-consistent-hashing.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#denormalization |
| PostgreSQL | https://en.wikipedia.org/wiki/PostgreSQL |
| materialized views | https://en.wikipedia.org/wiki/Materialized_view |
| federation | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#federation |
| sharding | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sharding |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-denormalization |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-denormalization |
| Denormalization | https://en.wikipedia.org/wiki/Denormalization |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sql-tuning |
| books | https://www.amazon.com/s/ref=nb_sb_noss_2?url=search-alias%3Daps&field-keywords=sql+tuning |
| ab | http://httpd.apache.org/docs/2.2/programs/ab.html |
| slow query log | http://dev.mysql.com/doc/refman/5.7/en/slow-query-log.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#tighten-up-the-schema |
| improve search performance | http://stackoverflow.com/questions/1017239/how-do-null-values-affect-performance-in-a-database-search |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#use-good-indices |
| B-tree | https://en.wikipedia.org/wiki/B-tree |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#avoid-expensive-joins |
| Denormalize | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#denormalization |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#partition-tables |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#tune-the-query-cache |
| query cache | http://dev.mysql.com/doc/refman/5.7/en/query-cache |
| performance issues | https://www.percona.com/blog/2014/01/28/10-mysql-performance-tuning-settings-after-installation/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-sql-tuning |
| Tips for optimizing MySQL queries | http://20bits.com/article/10-tips-for-optimizing-mysql-queries-that-dont-suck |
| Is there a good reason i see VARCHAR(255) used so often? | http://stackoverflow.com/questions/1217466/is-there-a-good-reason-i-see-varchar255-used-so-often-as-opposed-to-another-l |
| How do null values affect performance? | http://stackoverflow.com/questions/1017239/how-do-null-values-affect-performance-in-a-database-search |
| Slow query log | http://dev.mysql.com/doc/refman/5.7/en/slow-query-log.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#nosql |
| eventual consistency | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#eventual-consistency |
| CAP Theorem | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cap-theorem |
| SQL or NoSQL | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sql-or-nosql |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#key-value-store |
| lexicographic order | https://en.wikipedia.org/wiki/Lexicographical_order |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-key-value-store |
| Key-value database | https://en.wikipedia.org/wiki/Key-value_database |
| Disadvantages of key-value stores | http://stackoverflow.com/questions/4056093/what-are-the-disadvantages-of-using-a-key-value-table-over-nullable-columns-or |
| Redis architecture | http://qnimate.com/overview-of-redis-architecture/ |
| Memcached architecture | https://www.adayinthelifeof.nl/2011/02/06/memcache-internals/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#document-store |
| MongoDB | https://www.mongodb.com/mongodb-architecture |
| CouchDB | https://blog.couchdb.org/2016/08/01/couchdb-2-0-architecture/ |
| DynamoDB | http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/decandia07dynamo.pdf |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-document-store |
| Document-oriented database | https://en.wikipedia.org/wiki/Document-oriented_database |
| MongoDB architecture | https://www.mongodb.com/mongodb-architecture |
| CouchDB architecture | https://blog.couchdb.org/2016/08/01/couchdb-2-0-architecture/ |
| Elasticsearch architecture | https://www.elastic.co/blog/found-elasticsearch-from-the-bottom-up |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#wide-column-store |
| https://camo.githubusercontent.com/bda1bacf98b159c06a36aa1e12e22844216d1e9ff90db9d1380106343c01e3d8/687474703a2f2f692e696d6775722e636f6d2f6e3136694f476b2e706e67 |
| Source: SQL & NoSQL, a brief history | http://blog.grio.com/2015/11/sql-nosql-a-brief-history.html |
| Bigtable | http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/chang06bigtable.pdf |
| HBase | https://www.mapr.com/blog/in-depth-look-hbase-architecture |
| Cassandra | http://docs.datastax.com/en/archived/cassandra/2.0/cassandra/architecture/architectureIntro_c.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-wide-column-store |
| SQL & NoSQL, a brief history | http://blog.grio.com/2015/11/sql-nosql-a-brief-history.html |
| Bigtable architecture | http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/chang06bigtable.pdf |
| HBase architecture | https://www.mapr.com/blog/in-depth-look-hbase-architecture |
| Cassandra architecture | http://docs.datastax.com/en/archived/cassandra/2.0/cassandra/architecture/architectureIntro_c.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#graph-database |
| https://camo.githubusercontent.com/20608b8e26431b91f2844feb79b3eb3e50a292ef4d26c6abf7291b027ce6e198/687474703a2f2f692e696d6775722e636f6d2f664e636c3635672e706e67 |
| Source: Graph database | https://en.wikipedia.org/wiki/File:GraphDatabase_PropertyGraph.png |
| REST APIs | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#representational-state-transfer-rest |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-graph |
| Graph database | https://en.wikipedia.org/wiki/Graph_database |
| Neo4j | https://neo4j.com/ |
| FlockDB | https://blog.twitter.com/2010/introducing-flockdb |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-nosql |
| Explanation of base terminology | http://stackoverflow.com/questions/3342497/explanation-of-base-terminology |
| NoSQL databases a survey and decision guidance | https://medium.com/baqend-blog/nosql-databases-a-survey-and-decision-guidance-ea7823a822d#.wskogqenq |
| Scalability | http://www.lecloud.net/post/7994751381/scalability-for-dummies-part-2-database |
| Introduction to NoSQL | https://www.youtube.com/watch?v=qI_g07C_Q5I |
| NoSQL patterns | http://horicky.blogspot.com/2009/11/nosql-patterns.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sql-or-nosql |
| https://camo.githubusercontent.com/ed1a4571551aef44748e3bbd082fe74935151b8a4b3529de8f4cb9850a227f00/687474703a2f2f692e696d6775722e636f6d2f775847714735662e706e67 |
| Source: Transitioning from RDBMS to NoSQL | https://www.infoq.com/articles/Transition-RDBMS-NoSQL/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-sql-or-nosql |
| Scaling up to your first 10 million users | https://www.youtube.com/watch?v=vg5onp8TU6Q |
| SQL vs NoSQL differences | https://www.sitepoint.com/sql-vs-nosql-differences/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cache |
| https://camo.githubusercontent.com/5ee1149ed575d57f3c7f82456bcff6e8719fbd691690782c712f75646418dd50/687474703a2f2f692e696d6775722e636f6d2f51367a32344c612e706e67 |
| Source: Scalable system design patterns | http://horicky.blogspot.com/2010/10/scalable-system-design-patterns.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#client-caching |
| server side | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#reverse-proxy |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cdn-caching |
| CDNs | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#content-delivery-network |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#web-server-caching |
| Reverse proxies | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#reverse-proxy-web-server |
| Varnish | https://www.varnish-cache.org/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#database-caching |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#application-caching |
| cache invalidation | https://en.wikipedia.org/wiki/Cache_algorithms |
| least recently used (LRU) | https://en.wikipedia.org/wiki/Cache_algorithms#Least_Recently_Used |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#caching-at-the-database-query-level |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#caching-at-the-object-level |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#when-to-update-the-cache |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#cache-aside |
| https://camo.githubusercontent.com/95c232f006e3f94432bf48d017304105fbe91098a695250ff237b6f72bd558c5/687474703a2f2f692e696d6775722e636f6d2f4f4e6a4f52716b2e706e67 |
| Source: From cache to in-memory data grid | http://www.slideshare.net/tmatyashovsky/from-cache-to-in-memory-data-grid-introduction-to-hazelcast |
| Memcached | https://memcached.org/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-cache-aside |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#write-through |
| https://camo.githubusercontent.com/2740e028d5abd5e64a8790b5d0613fe5909b2fb46964209547cf5a1a812958ab/687474703a2f2f692e696d6775722e636f6d2f3076426330684e2e706e67 |
| Source: Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-write-through |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#write-behind-write-back |
| https://camo.githubusercontent.com/eceb97cc2c8c8bf962904fa06f9ed89b8daca95526a581128ddf9437b247c413/687474703a2f2f692e696d6775722e636f6d2f72675372766a472e706e67 |
| Source: Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-write-behind |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#refresh-ahead |
| https://camo.githubusercontent.com/73e94a4f63c259ccd9a28d56b50215da039f1b1866deb3cdeae0b4e4c6d366a0/687474703a2f2f692e696d6775722e636f6d2f6b78746a7167452e706e67 |
| Source: From cache to in-memory data grid | http://www.slideshare.net/tmatyashovsky/from-cache-to-in-memory-data-grid-introduction-to-hazelcast |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-refresh-ahead |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-cache |
| cache invalidation | https://en.wikipedia.org/wiki/Cache_algorithms |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-10 |
| From cache to in-memory data grid | http://www.slideshare.net/tmatyashovsky/from-cache-to-in-memory-data-grid-introduction-to-hazelcast |
| Scalable system design patterns | http://horicky.blogspot.com/2010/10/scalable-system-design-patterns.html |
| Introduction to architecting systems for scale | http://lethain.com/introduction-to-architecting-systems-for-scale/ |
| Scalability, availability, stability, patterns | http://www.slideshare.net/jboner/scalability-availability-stability-patterns/ |
| Scalability | http://www.lecloud.net/post/9246290032/scalability-for-dummies-part-3-cache |
| AWS ElastiCache strategies | http://docs.aws.amazon.com/AmazonElastiCache/latest/UserGuide/Strategies.html |
| Wikipedia | https://en.wikipedia.org/wiki/Cache_(computing) |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#asynchronism |
| https://camo.githubusercontent.com/28e5343650924cb6d1c1e2cba149b0bc95c1641e0cdfcea988c1cad22439c7e5/687474703a2f2f692e696d6775722e636f6d2f353447597353782e706e67 |
| Source: Intro to architecting systems for scale | http://lethain.com/introduction-to-architecting-systems-for-scale/#platform_layer |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#message-queues |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#task-queues |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#back-pressure |
| Back pressure | http://mechanical-sympathy.blogspot.com/2012/05/apply-back-pressure-when-overloaded.html |
| exponential backoff | https://en.wikipedia.org/wiki/Exponential_backoff |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-asynchronism |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-11 |
| It's all a numbers game | https://www.youtube.com/watch?v=1KRYH75wgy4 |
| Applying back pressure when overloaded | http://mechanical-sympathy.blogspot.com/2012/05/apply-back-pressure-when-overloaded.html |
| Little's law | https://en.wikipedia.org/wiki/Little%27s_law |
| What is the difference between a message queue and a task queue? | https://www.quora.com/What-is-the-difference-between-a-message-queue-and-a-task-queue-Why-would-a-task-queue-require-a-message-broker-like-RabbitMQ-Redis-Celery-or-IronMQ-to-function |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#communication |
| https://camo.githubusercontent.com/6a2157ca5b2a49d8b5c8a0c1de8fd3ca0b3223b6de98b86cc2f7debbaf6d57d8/687474703a2f2f692e696d6775722e636f6d2f354b656f6351732e6a7067 |
| Source: OSI 7 layer model | http://www.escotal.com/osilayer.html |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#hypertext-transfer-protocol-http |
| HTTP | https://www.nginx.com/resources/glossary/http/ |
| README | https://www.quora.com/What-is-the-difference-between-HTTP-protocol-and-TCP-protocol |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#transmission-control-protocol-tcp |
| https://camo.githubusercontent.com/b30e9e80090d281d32331c681ebb239ccbb4723aa9e55e146885146f6df5b6db/687474703a2f2f692e696d6775722e636f6d2f4a6441736476472e6a7067 |
| Source: How to make a multiplayer game | http://www.wildbunny.co.uk/blog/2012/10/09/how-to-make-a-multi-player-game-part-1/ |
| IP network | https://en.wikipedia.org/wiki/Internet_Protocol |
| handshake | https://en.wikipedia.org/wiki/Handshaking |
| checksum fields | https://en.wikipedia.org/wiki/Transmission_Control_Protocol#Checksum_computation |
| Acknowledgement | https://en.wikipedia.org/wiki/Acknowledgement_(data_networks) |
| flow control | https://en.wikipedia.org/wiki/Flow_control_(data) |
| congestion control | https://en.wikipedia.org/wiki/Network_congestion#Congestion_control |
| memcached | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#memcached |
| Connection pooling | https://en.wikipedia.org/wiki/Connection_pool |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#user-datagram-protocol-udp |
| https://camo.githubusercontent.com/9d58d60ab2c3a2e5d1825e53538578aacc5be1b155bd6a58360d0e18d595a7b5/687474703a2f2f692e696d6775722e636f6d2f797a44724a74412e6a7067 |
| Source: How to make a multiplayer game | http://www.wildbunny.co.uk/blog/2012/10/09/how-to-make-a-multi-player-game-part-1/ |
| DHCP | https://en.wikipedia.org/wiki/Dynamic_Host_Configuration_Protocol |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-tcp-and-udp |
| Networking for game programming | http://gafferongames.com/networking-for-game-programmers/udp-vs-tcp/ |
| Key differences between TCP and UDP protocols | http://www.cyberciti.biz/faq/key-differences-between-tcp-and-udp-protocols/ |
| Difference between TCP and UDP | http://stackoverflow.com/questions/5970383/difference-between-tcp-and-udp |
| Transmission control protocol | https://en.wikipedia.org/wiki/Transmission_Control_Protocol |
| User datagram protocol | https://en.wikipedia.org/wiki/User_Datagram_Protocol |
| Scaling memcache at Facebook | http://www.cs.bu.edu/~jappavoo/jappavoo.github.com/451/papers/memcache-fb.pdf |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#remote-procedure-call-rpc |
| https://camo.githubusercontent.com/ae9ec8d6655393996033b5fc49abce2cd7d990d53c12a7d8c79cca1647ac4de2/687474703a2f2f692e696d6775722e636f6d2f6946344d6b62352e706e67 |
| Source: Crack the system design interview | http://www.puncsky.com/blog/2016/02/14/crack-the-system-design-interview/ |
| Protobuf | https://developers.google.com/protocol-buffers/ |
| Thrift | https://thrift.apache.org/ |
| Avro | https://avro.apache.org/docs/current/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-rpc |
| RPC calls are properly cached | http://etherealbits.com/2012/12/debunking-the-myths-of-rpc-rest/ |
| Squid | http://www.squid-cache.org/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#representational-state-transfer-rest |
| HATEOAS | http://restcookbook.com/Basics/hateoas/ |
| representation through headers | https://github.com/for-GET/know-your-http-well/blob/master/headers.md |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#disadvantages-rest |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#rpc-and-rest-calls-comparison |
| Source: Do you really know why you prefer REST over RPC | https://apihandyman.io/do-you-really-know-why-you-prefer-rest-over-rpc/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-rest-and-rpc |
| Do you really know why you prefer REST over RPC | https://apihandyman.io/do-you-really-know-why-you-prefer-rest-over-rpc/ |
| When are RPC-ish approaches more appropriate than REST? | http://programmers.stackexchange.com/a/181186 |
| REST vs JSON-RPC | http://stackoverflow.com/questions/15056878/rest-vs-json-rpc |
| Debunking the myths of RPC and REST | http://etherealbits.com/2012/12/debunking-the-myths-of-rpc-rest/ |
| What are the drawbacks of using REST | https://www.quora.com/What-are-the-drawbacks-of-using-RESTful-APIs |
| Crack the system design interview | http://www.puncsky.com/blog/2016/02/14/crack-the-system-design-interview/ |
| Thrift | https://code.facebook.com/posts/1468950976659943/ |
| Why REST for internal use and not RPC | http://arstechnica.com/civis/viewtopic.php?t=1190508 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#security |
| contributing | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| XSS | https://en.wikipedia.org/wiki/Cross-site_scripting |
| SQL injection | https://en.wikipedia.org/wiki/SQL_injection |
| least privilege | https://en.wikipedia.org/wiki/Principle_of_least_privilege |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-12 |
| Security guide for developers | https://github.com/FallibleInc/security-guide-for-developers |
| OWASP top ten | https://www.owasp.org/index.php/OWASP_Top_Ten_Cheat_Sheet |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#appendix |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#powers-of-two-table |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-13 |
| Powers of two | https://en.wikipedia.org/wiki/Power_of_two |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#latency-numbers-every-programmer-should-know |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#latency-numbers-visualized |
| https://camo.githubusercontent.com/77f72259e1eb58596b564d1ad823af1853bc60a3/687474703a2f2f692e696d6775722e636f6d2f6b307431652e706e67 |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-14 |
| Latency numbers every programmer should know - 1 | https://gist.github.com/jboner/2841832 |
| Latency numbers every programmer should know - 2 | https://gist.github.com/hellerbarde/2843375 |
| Designs, lessons, and advice from building large distributed systems | http://www.cs.cornell.edu/projects/ladis2009/talks/dean-keynote-ladis2009.pdf |
| Software Engineering Advice from Building Large-Scale Distributed Systems | https://static.googleusercontent.com/media/research.google.com/en//people/jeff/stanford-295-talk.pdf |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#additional-system-design-interview-questions |
| youtube.com | https://www.youtube.com/watch?v=PE4gwstWhmc |
| queue.acm.org | http://queue.acm.org/detail.cfm?id=988407 |
| stackexchange.com | http://programmers.stackexchange.com/questions/38324/interview-question-how-would-you-implement-google-search |
| ardendertat.com | http://www.ardendertat.com/2012/01/11/implementing-search-engines/ |
| stanford.edu | http://infolab.stanford.edu/~backrub/google.html |
| quora.com | https://www.quora.com/How-can-I-build-a-web-crawler-from-scratch |
| code.google.com | https://code.google.com/p/google-mobwrite/ |
| neil.fraser.name | https://neil.fraser.name/writing/sync/ |
| slideshare.net | http://www.slideshare.net/dvirsky/introduction-to-redis |
| slideshare.net | http://www.slideshare.net/oemebamo/introduction-to-memcached |
| hulu.com | http://tech.hulu.com/blog/2011/09/19/recommendation-system.html |
| ijcai13.org | http://ijcai13.org/files/tutorial_slides/td3.pdf |
| n00tc0d3r.blogspot.com | http://n00tc0d3r.blogspot.com/ |
| highscalability.com | http://highscalability.com/blog/2014/2/26/the-whatsapp-architecture-facebook-bought-for-19-billion.html |
| highscalability.com | http://highscalability.com/flickr-architecture |
| highscalability.com | http://highscalability.com/blog/2011/12/6/instagram-architecture-14-million-users-terabytes-of-photos.html |
| quora.com | http://www.quora.com/What-are-best-practices-for-building-something-like-a-News-Feed |
| quora.com | http://www.quora.com/Activity-Streams/What-are-the-scaling-issues-to-keep-in-mind-while-developing-a-social-network-feed |
| slideshare.net | http://www.slideshare.net/danmckinley/etsy-activity-feeds-architecture |
| facebook.com | https://www.facebook.com/note.php?note_id=10150468255628920 |
| highscalability.com | http://highscalability.com/blog/2012/1/23/facebook-timeline-brought-to-you-by-the-power-of-denormaliza.html |
| erlang-factory.com | http://www.erlang-factory.com/upload/presentations/31/EugeneLetuchy-ErlangatFacebook.pdf |
| facebook.com | https://www.facebook.com/note.php?note_id=14218138919&id=9445547199&index=0 |
| facebook.com | https://www.facebook.com/notes/facebook-engineering/under-the-hood-building-out-the-infrastructure-for-graph-search/10151347573598920 |
| facebook.com | https://www.facebook.com/notes/facebook-engineering/under-the-hood-indexing-and-ranking-in-graph-search/10151361720763920 |
| facebook.com | https://www.facebook.com/notes/facebook-engineering/under-the-hood-the-natural-language-interface-of-graph-search/10151432733048920 |
| cmu.edu | http://repository.cmu.edu/cgi/viewcontent.cgi?article=2112&context=compsci |
| michael-noll.com | http://www.michael-noll.com/blog/2013/01/18/implementing-real-time-trending-topics-in-storm/ |
| snikolov .wordpress.com | http://snikolov.wordpress.com/2012/11/14/early-detection-of-twitter-trends/ |
| blog.twitter.com | https://blog.twitter.com/2010/announcing-snowflake |
| github.com | https://github.com/twitter/snowflake/ |
| ucsb.edu | https://icmi.cs.ucsb.edu/research/tech_reports/reports/2005-23.pdf |
| wpi.edu | http://davis.wpi.edu/xmdv/docs/EDBT11-diyang.pdf |
| highscalability.com | http://highscalability.com/blog/2009/8/24/how-google-serves-data-from-multiple-datacenters.html |
| indieflashblog.com | http://www.indieflashblog.com/how-to-create-an-asynchronous-multiplayer-game.html |
| buildnewgames.com | http://buildnewgames.com/real-time-multiplayer/ |
| stuffwithstuff.com | http://journal.stuffwithstuff.com/2013/12/08/babys-first-garbage-collector/ |
| washington.edu | http://courses.cs.washington.edu/courses/csep521/07wi/prj/rick.pdf |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#real-world-architectures |
| https://camo.githubusercontent.com/85f4c79dc0fd1bd3cb3952b5dcd57a1ab5119e8b08efde8b5a27c6452359c66c/687474703a2f2f692e696d6775722e636f6d2f5463556f3266772e706e67 |
| Source: Twitter timelines at scale | https://www.infoq.com/presentations/Twitter-Timeline-Scalability |
| research.google.com | http://static.googleusercontent.com/media/research.google.com/zh-CN/us/archive/mapreduce-osdi04.pdf |
| slideshare.net | http://www.slideshare.net/AGrishchenko/apache-spark-architecture |
| slideshare.net | http://www.slideshare.net/previa/storm-16094009 |
| harvard.edu | http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/chang06bigtable.pdf |
| slideshare.net | http://www.slideshare.net/alexbaranau/intro-to-hbase |
| slideshare.net | http://www.slideshare.net/planetcassandra/cassandra-introduction-features-30103666 |
| harvard.edu | http://www.read.seas.harvard.edu/~kohler/class/cs239-w08/decandia07dynamo.pdf |
| slideshare.net | http://www.slideshare.net/mdirolf/introduction-to-mongodb |
| research.google.com | http://research.google.com/archive/spanner-osdi2012.pdf |
| slideshare.net | http://www.slideshare.net/oemebamo/introduction-to-memcached |
| slideshare.net | http://www.slideshare.net/dvirsky/introduction-to-redis |
| research.google.com | http://static.googleusercontent.com/media/research.google.com/zh-CN/us/archive/gfs-sosp2003.pdf |
| apache.org | https://hadoop.apache.org/docs/r1.2.1/hdfs_design.html |
| research.google.com | http://static.googleusercontent.com/external_content/untrusted_dlcp/research.google.com/en/us/archive/chubby-osdi06.pdf |
| research.google.com | http://static.googleusercontent.com/media/research.google.com/en//pubs/archive/36356.pdf |
| slideshare.net | http://www.slideshare.net/mumrah/kafka-talk-tri-hug |
| slideshare.net | http://www.slideshare.net/sauravhaloi/introduction-to-apache-zookeeper |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#company-architectures |
| Amazon architecture | http://highscalability.com/amazon-architecture |
| Producing 1,500 hours of audio every day | http://highscalability.com/blog/2012/7/16/cinchcast-architecture-producing-1500-hours-of-audio-every-d.html |
| Realtime datamining At 120,000 tweets per second | http://highscalability.com/blog/2011/11/29/datasift-architecture-realtime-datamining-at-120000-tweets-p.html |
| How we've scaled Dropbox | https://www.youtube.com/watch?v=PE4gwstWhmc |
| Operating At 100,000 duh nuh nuhs per second | http://highscalability.com/blog/2013/11/4/espns-architecture-at-scale-operating-at-100000-duh-nuh-nuhs.html |
| Google architecture | http://highscalability.com/google-architecture |
| 14 million users, terabytes of photos | http://highscalability.com/blog/2011/12/6/instagram-architecture-14-million-users-terabytes-of-photos.html |
| What powers Instagram | http://instagram-engineering.tumblr.com/post/13649370142/what-powers-instagram-hundreds-of-instances |
| Justin.Tv's live video broadcasting architecture | http://highscalability.com/blog/2010/3/16/justintvs-live-video-broadcasting-architecture.html |
| Scaling memcached at Facebook | https://cs.uwaterloo.ca/~brecht/courses/854-Emerging-2014/readings/key-value/fb-memcached-nsdi-2013.pdf |
| TAO: Facebook’s distributed data store for the social graph | https://cs.uwaterloo.ca/~brecht/courses/854-Emerging-2014/readings/data-store/tao-facebook-distributed-datastore-atc-2013.pdf |
| Facebook’s photo storage | https://www.usenix.org/legacy/event/osdi10/tech/full_papers/Beaver.pdf |
| Flickr architecture | http://highscalability.com/flickr-architecture |
| From 0 to one million users in 6 weeks | http://highscalability.com/blog/2013/6/18/scaling-mailbox-from-0-to-one-million-users-in-6-weeks-and-1.html |
| From 0 To 10s of billions of page views a month | http://highscalability.com/blog/2013/4/15/scaling-pinterest-from-0-to-10s-of-billions-of-page-views-a.html |
| 18 million visitors, 10x growth, 12 employees | http://highscalability.com/blog/2012/5/21/pinterest-architecture-update-18-million-visitors-10x-growth.html |
| 50 million monthly users and growing | http://highscalability.com/blog/2010/9/21/playfishs-social-gaming-architecture-50-million-monthly-user.html |
| PlentyOfFish architecture | http://highscalability.com/plentyoffish-architecture |
| How they handle 1.3 billion transactions a day | http://highscalability.com/blog/2013/9/23/salesforce-architecture-how-they-handle-13-billion-transacti.html |
| Stack Overflow architecture | http://highscalability.com/blog/2009/8/5/stack-overflow-architecture.html |
| 40M visitors, 200M dynamic page views, 30TB data | http://highscalability.com/blog/2011/6/27/tripadvisor-architecture-40m-visitors-200m-dynamic-page-view.html |
| 15 billion page views a month | http://highscalability.com/blog/2012/2/13/tumblr-architecture-15-billion-page-views-a-month-and-harder.html |
| Making Twitter 10000 percent faster | http://highscalability.com/scaling-twitter-making-twitter-10000-percent-faster |
| Storing 250 million tweets a day using MySQL | http://highscalability.com/blog/2011/12/19/how-twitter-stores-250-million-tweets-a-day-using-mysql.html |
| 150M active users, 300K QPS, a 22 MB/S firehose | http://highscalability.com/blog/2013/7/8/the-architecture-twitter-uses-to-deal-with-150m-active-users.html |
| Timelines at scale | https://www.infoq.com/presentations/Twitter-Timeline-Scalability |
| Big and small data at Twitter | https://www.youtube.com/watch?v=5cKTP36HVgI |
| Operations at Twitter: scaling beyond 100 million users | https://www.youtube.com/watch?v=z8LU0Cj6BOU |
| How Uber scales their real-time market platform | http://highscalability.com/blog/2015/9/14/how-uber-scales-their-real-time-market-platform.html |
| The WhatsApp architecture Facebook bought for $19 billion | http://highscalability.com/blog/2014/2/26/the-whatsapp-architecture-facebook-bought-for-19-billion.html |
| YouTube scalability | https://www.youtube.com/watch?v=w5WVu624fY8 |
| YouTube architecture | http://highscalability.com/youtube-architecture |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#company-engineering-blogs |
| Airbnb Engineering | http://nerds.airbnb.com/ |
| Atlassian Developers | https://developer.atlassian.com/blog/ |
| Autodesk Engineering | http://cloudengineering.autodesk.com/blog/ |
| AWS Blog | https://aws.amazon.com/blogs/aws/ |
| Bitly Engineering Blog | http://word.bitly.com/ |
| Box Blogs | https://www.box.com/blog/engineering/ |
| Cloudera Developer Blog | http://blog.cloudera.com/blog/ |
| Dropbox Tech Blog | https://tech.dropbox.com/ |
| Engineering at Quora | http://engineering.quora.com/ |
| Ebay Tech Blog | http://www.ebaytechblog.com/ |
| Evernote Tech Blog | https://blog.evernote.com/tech/ |
| Etsy Code as Craft | http://codeascraft.com/ |
| Facebook Engineering | https://www.facebook.com/Engineering |
| Flickr Code | http://code.flickr.net/ |
| Foursquare Engineering Blog | http://engineering.foursquare.com/ |
| GitHub Engineering Blog | http://githubengineering.com/ |
| Google Research Blog | http://googleresearch.blogspot.com/ |
| Groupon Engineering Blog | https://engineering.groupon.com/ |
| Heroku Engineering Blog | https://engineering.heroku.com/ |
| Hubspot Engineering Blog | http://product.hubspot.com/blog/topic/engineering |
| High Scalability | http://highscalability.com/ |
| Instagram Engineering | http://instagram-engineering.tumblr.com/ |
| Intel Software Blog | https://software.intel.com/en-us/blogs/ |
| Jane Street Tech Blog | https://blogs.janestreet.com/category/ocaml/ |
| LinkedIn Engineering | http://engineering.linkedin.com/blog |
| Microsoft Engineering | https://engineering.microsoft.com/ |
| Microsoft Python Engineering | https://blogs.msdn.microsoft.com/pythonengineering/ |
| Netflix Tech Blog | http://techblog.netflix.com/ |
| Paypal Developer Blog | https://devblog.paypal.com/category/engineering/ |
| Pinterest Engineering Blog | http://engineering.pinterest.com/ |
| Quora Engineering | https://engineering.quora.com/ |
| Reddit Blog | http://www.redditblog.com/ |
| Salesforce Engineering Blog | https://developer.salesforce.com/blogs/engineering/ |
| Slack Engineering Blog | https://slack.engineering/ |
| Spotify Labs | https://labs.spotify.com/ |
| Twilio Engineering Blog | http://www.twilio.com/engineering |
| Twitter Engineering | https://engineering.twitter.com/ |
| Uber Engineering Blog | http://eng.uber.com/ |
| Yahoo Engineering Blog | http://yahooeng.tumblr.com/ |
| Yelp Engineering Blog | http://engineeringblog.yelp.com/ |
| Zynga Engineering Blog | https://www.zynga.com/blogs/engineering |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#sources-and-further-reading-15 |
| kilimchoi/engineering-blogs | https://github.com/kilimchoi/engineering-blogs |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#under-development |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| Contribute | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#credits |
| Hired in tech | http://www.hiredintech.com/system-design/the-system-design-process/ |
| Cracking the coding interview | https://www.amazon.com/dp/0984782850/ |
| High scalability | http://highscalability.com/ |
| checkcheckzz/system-design-interview | https://github.com/checkcheckzz/system-design-interview |
| shashank88/system_design | https://github.com/shashank88/system_design |
| mmcgrana/services-engineering | https://github.com/mmcgrana/services-engineering |
| System design cheat sheet | https://gist.github.com/vasanthk/485d1c25737e8e72759f |
| A distributed systems reading list | http://dancres.github.io/Pages/ |
| Cracking the system design interview | http://www.puncsky.com/blog/2016/02/14/crack-the-system-design-interview/ |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contact-info |
| GitHub page | https://github.com/donnemartin |
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#license |
| https://github.com/donnemartin/system-design-primer | https://github.com/donnemartin/system-design-primer |
|
Readme
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#readme-ov-file |
|
View license
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#License-1-ov-file |
|
Contributing
| https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN#contributing-ov-file |
| Please reload this page | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN |
|
Activity | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/activity |
|
Custom properties | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/custom-properties |
|
0
stars | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/stargazers |
|
1
watching | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/watchers |
|
0
forks | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/forks |
|
Report repository
| https://patch-diff.githubusercontent.com/contact/report-content?content_url=https%3A%2F%2Fgithub.com%2FLearningJavaPython%2Fsystem-design-primer-zh_CN&report=LearningJavaPython+%28user%29 |
| Releases | https://patch-diff.githubusercontent.com/LearningJavaPython/system-design-primer-zh_CN/releases |
| Packages
0 | https://patch-diff.githubusercontent.com/orgs/LearningJavaPython/packages?repo_name=system-design-primer-zh_CN |
|
| https://github.com |
| Terms | https://docs.github.com/site-policy/github-terms/github-terms-of-service |
| Privacy | https://docs.github.com/site-policy/privacy-policies/github-privacy-statement |
| Security | https://github.com/security |
| Status | https://www.githubstatus.com/ |
| Community | https://github.community/ |
| Docs | https://docs.github.com/ |
| Contact | https://support.github.com?tags=dotcom-footer |