免费 系统设计文本课 Google Autocomplete 系统设计题解 Autocomplete 又被称作 Typeahead,指用户在搜索框中打字的同时,搜索框进行补全,并给出多个用户可能想搜索的关键词。这个功能使得用户在搜索体验更加顺畅。 Autocomplete 主要考察两条数据流,一是如何收集高频搜索关键词,二是如何实时补全用户打了一半的关键词前缀。
免费 系统设计文本课 Google Doc 系统设计题解 Google Doc 这类的多人在线文档协作系统给我们的日常工作带来很多便利,我们可以很容易地跟同事朋友实时分享并协作编辑文档。 在线文档协作系统在简单的文本编辑器的基础上增加的分享协作功能是我们系统设计的核心。我们需要考虑如何设计服务以及存储,使得多人可以在同时修改文档时,所有人可以得到内容相同的文档。
免费 系统设计文本课 实时监控系统题解 实时监控系统是每一个网络服务的刚需,每个后端工程师都多多少少接触和使用过。 这道题主要考察 Streaming Service 的应用,监控系统作为一个 Streaming Service 的经典实例,牵涉到 Streaming Service 上游的 Publisher 和下游的 Consumer 如何合理配置,来实现监控系统所涉及到的种种功能。
免费 系统设计文本课 Yelp 系统设计题解 Yelp 是属于吃货的 App。查餐馆时,去看看几颗星,点菜前,查查有什么特色菜。在北美,不管走到哪里,有了 Yelp 不会担心吃不好。 Yelp 从系统设计角度上相比传统的分布式系统有很强的地域性,所以 Yelp 的设计与很多强地域性点评类网站有很多共通之处,比如 Trip Advisor, Tinder。这个地域性也会成为这道题的主要考点。
免费 基础串讲 系统设计基础串讲之二 RESTful API 设计 API 设计是系统设计的重要组成部分,其中最常用的 API 设计风格就是 RESTful API。面试中虽然大多数人都能把 API 的大致输入输出说清楚,但也不乏有人或是因为违背了 RESTful 设计原则,或是因为 API 没有写成符合业界标准的格式,而导致失分。下面我们就从设计原则,HTTP 标准格式和设计实战经验总结三方面就来教你如何合理设计 RESTful API。
免费 系统设计文本课 Dropbox 云存储服务系统设计题解 Dropbox 是在线文件存储分享服务的代表,它帮助用户随时随地访问存储的文件。它同时方便了不同用户之间的文件分享以及提供追溯文件历史版本的功能。Dropbox 是如何大规模,高性能,高一致性地提供这样服务的呢?这篇4000字题解就来带你探索其中大型分布式系统的搭建,分析从在线存储同步数据流到数据库结构分区等诸多设计要点。
免费 系统设计文本课 Google 搜索引擎系统设计题解 Google 作为搜索引擎的标杆,帮助用户发现了互联网上无数的精彩。这道系统面试题着重考察同学对信息索引 (Index) 和查询 (Query) 的理解。这篇6000字题解就来帮你深挖小小的搜索框是如何帮我们从茫茫互联网上找到内容的。
免费 系统设计文本课 Netflix 系统设计题解 Netflix 作为最大的电影电视剧串流平台,大家对旗下电视剧如纸牌屋和怪奇物语也是耳熟能详。它占据了互联网下载流量的12.9%,超过 Youtube 接近一倍。大家有没有好奇 Netflix 是如何支持如此巨大的下载流量的呢?今天我们就来为你揭开它的神秘面纱。
免费 系统设计文本课 分布式锁系统设计题解 每当我们在分布式系统中想要寻求一致性,我们都离不开分布式锁。很多面试题里我们会在一致性和可用性之间选择可用性。然而,理解分布式锁能帮我们打破思维定式,体验一致性优先的使用场景并剖析其实现方法。
免费 系统设计文本课 网络爬虫系统设计题解 (Web Crawler) 爬虫是 Google 搜索的核心组件之一,自从互联网诞生初期就帮助我们整理互联网上的资源,解决了信息发现的难题。今天我们来看看如何设计一款高效的网络爬虫。
免费 系统设计文本课 Messaging Service 系统设计题解 帮你涵盖 Messaging Service 在系统设计面试中的全部考点。教你设计 Whatsapp, Facebook Messenger 以及微信。