编辑
2023-06-08
👨‍🎓 无限进步
00

CHAPTER 13: DESIGN A SEARCH AUTOCOMPLETE SYSTEM

When searching on Google or shopping at Amazon, as you type in the search box, one or more matches for the search term are presented to you. This feature is referred to as autocomplete, typeahead, search-as-you-type, or incremental search. Figure 13-1 presents an example of a Google search showing a list of autocompleted results when “dinner” is typed into the search box. Search autocomplete is an important feature of many products. This leads us to the interview question: design a search autocomplete system, also called “design top k” or “design top k most searched queries”. 在 Google 上搜索或在亚马逊购物时,当您在搜索框中输入内容时,系统会向您显示搜索词的一个或多个匹配项。此功能称为自动完成、提前键入、键入时搜索或增量搜索。图 13-1 显示了一个 Google 搜索示例,其中显示了在搜索框中键入“晚餐”时自动完成的结果列表。搜索自动完成是许多产品的重要功能。这就引出了面试问题:设计一个搜索自动完成系统,也称为“设计前k”或“设计前k个搜索最多的查询”。
编辑
2023-06-07
👨‍🎓 无限进步
00

CHAPTER 12: DESIGN A CHAT SYSTEM

In this chapter we explore the design of a chat system. Almost everyone uses a chat app. Figure 12-1 shows some of the most popular apps in the marketplace. 在本章中,我们将探讨聊天系统的设计。几乎每个人都使用聊天应用程序。 图 12-1 显示了市场上一些最受欢迎的应用。
编辑
2023-06-06
👨‍🎓 无限进步
00

CHAPTER 11: DESIGN A NEWS FEED SYSTEM

In this chapter, you are asked to design a news feed system. What is news feed? According to the Facebook help page, “News feed is the constantly updating list of stories in the middle of your home page. News Feed includes status updates, photos, videos, links, app activity, and likes from people, pages, and groups that you follow on Facebook” [1]. This is a popular interview question. Similar questions commonly asked are: design Facebook news feed, Instagram feed, Twitter timeline, etc. 在本章中,要求您设计一个新闻源系统。什么是动态消息?根据 Facebook帮助页面,“新闻提要是中间不断更新的故事列表 您的主页。动态消息包括状态更新、照片、视频、链接、应用活动和 来自您在Facebook上关注的人,页面和小组的喜欢“ [1]。这是一个流行的 面试问题。常见的类似问题是:设计Facebook新闻提要, Instagram feed、Twitter timeline 等。
编辑
2023-06-06
👨‍🎓 无限进步
00

CHAPTER 10: DESIGN A NOTIFICATION SYSTEM

A notification system has already become a very popular feature for many applications in recent years. A notification alerts a user with important information like breaking news, product updates, events, offerings, etc. It has become an indispensable part of our daily life. In this chapter, you are asked to design a notification system. A notification is more than just mobile push notification. Three types of notification formats are: mobile push notification, SMS message, and Email. Figure 10-1 shows an example of each of these notifications. 通知系统已经成为许多应用程序中非常流行的功能 近年来。通知会提醒用户重要信息,例如突发新闻, 产品更新、活动、产品等它已成为我们日常生活中不可或缺的一部分。 在本章中,要求您设计一个通知系统。 通知不仅仅是移动推送通知。三种类型的通知格式 分别是:移动推送通知、短信和电子邮件。图 10-1 显示了 这些通知中的每一个。
编辑
2023-06-05
👨‍🎓 无限进步
00

CHAPTER 9: DESIGN A WEB CRAWLER

In this chapter, we focus on web crawler design: an interesting and classic system design interview question. A web crawler is known as a robot or spider. It is widely used by search engines to discover new or updated content on the web. Content can be a web page, an image, a video, a PDF file, etc. A web crawler starts by collecting a few web pages and then follows links on those pages to collect new content. Figure 9-1 shows a visual example of the crawl process. 在本章中,我们重点介绍网络爬虫设计:一个有趣而经典的系统设计 面试问题。 网络爬虫被称为机器人或蜘蛛。它被搜索引擎广泛用于发现 网络上新增或更新的内容。内容可以是网页、图像、视频、PDF 文件等。网络爬虫首先收集一些网页,然后跟踪这些网页上的链接 页面以收集新内容。图 9-1 显示了爬网过程的直观示例。