System设计面试问题都有哪些

发布时间:2021-10-09 14:51:54 作者:柒染
来源:亿速云 阅读:117

这篇文章将为大家详细讲解有关System设计面试问题都有哪些,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

开发人员倾向于解决SDI问题,因为它们是如此开放,并且通常需要一种在其他编码面试挑战中没有实践的批判性思维。

尽管SDI问题随着时间而变化,但其中一些问题在各种顶级公司的访谈中仍然很受欢迎。

今天,我们将探讨最常见的10个系统设计面试问题,每个问题中必须解决的常见问题以及一些可以帮助您完成此任务的工具。

System设计面试问题都有哪些

有关任何SDI问题的提示

通过陈述您所知道的问题来开始每个问题:列出系统的所有必需功能,此类系统可能遇到的常见问题以及系统希望处理的流量。列出过程使面试官可以在开始解决方案之前查看您的计划技能并纠正任何可能的误解。

叙述任何权衡:每个系统设计选择都很重要。在每个决策点,至少列出该选择的正面和负面影响。

请您的面试官澄清:大多数系统设计问题是故意含糊的。提出澄清问题,向面试官展示您如何看待问题以及对系统需求的了解。

讨论新兴技术:在每个问题的结尾都概述了系统如何以及在何处可以从机器学习中受益。这将表明您不仅为当前的解决方案做好了准备,而且还为将来的解决方案做好了准备。

System设计面试问题都有哪些

1.设计一个全球聊天服务,例如Facebook Messenger或WhatsApp

对于这个问题,您将设计一种服务,允许用户通过Internet彼此聊天。对话可以是一对一的对话,也可以是与许多成员进行的群聊。对话中包含的消息只能访问这些消息。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

2. 设计类似Uber或Lyft的拼车服务

该问题要求您创建一种将用户与附近驾驶员匹配的乘车共享服务。用户可以输入目的地并发送其当前位置,并在几秒钟内通知附近的驾驶员。

然后,该应用程序会跟踪驾驶员和用户当前位置之间的路线,然后再跟踪从用户位置到目的地的路线。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

3. 设计URL短服务,例如TinyURL或 bit.ly

这个问题要求您创建一个程序来缩短长网址,例如TinyURL或bit.ly。这些程序采用一个长URL并生成一个新的唯一的短URL。他们还可以输入缩短的URL并返回原始的完整URL。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

4. 设计一个大众社交媒体服务,例如Facebook,Twitter或Instagram

对于这个问题,您将设计一个供Instagram之类的十万用户使用的社交媒体服务。用户应该能够查看带有跟随者帖子的新闻提要,并建议用户喜欢的新内容。

采访者通常希望听到您深入讨论新闻源。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

5. 设计一个社交网络和留言板服务,例如Quora,Reddit或HackerNews

对于这个问题,您将设计一个类似于论坛的系统,用户可以在其中发布问题和链接。

其他用户可以查看和评论问题。问题具有代表其主题的标签,用户可以跟随标签查看有关特定主题的问题。用户有一个新闻源,该新闻源从其关注的标签和相关主题中突出显示了常见问题。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

6. 设计全局文件存储和共享服务,例如Dropbox,Google云端硬盘或Google相册

对于这个问题,您将创建一个同步的跨平台存储系统,例如Dropbox。用户可以存储文件和照片并从其他设备访问它们。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

7. 设计全球视频流服务,例如YouTube或Netflix

这个问题要求您创建在线视频流服务,例如YouTube。该服务将存储和传输数百PB的视频数据。它还必须存储统计信息(观看次数,喜欢次数,观看次数等),并允许用户发表评论。

您的解决方案必须具有可扩展性,以支持成千上万的并发用户。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

8. 为Firebase或Github等网站设计API速率限制器

对于这个问题,您将创建一个API速率限制器,以限制服务在给定时间段内可以接收的API调用次数,以避免过载。

采访者可以从一台机器到整个分布式网络,以各种规模提出要求。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

9. 设计一个类似Yelp或附近的地方/朋友的接近服务器

对于最后一个问题,您将设计一个邻近服务器,用于存储并报告到餐厅等地方的距离。用户可以按距离或受欢迎程度搜索附近的地点。该数据库必须存储全球5亿个位置的数据,但延迟低。

必备功能:

常见问题:

需要考虑的工具:

System设计面试问题都有哪些

10. 设计与搜索引擎相关的服务,例如Type-Ahead

该服务将部分完成搜索查询,并显示5条建议以完成查询。它应该实时适应高度搜索的内容,并向其他用户建议。

例如,将在事件发生后的几分钟内建议“海鹰队赢得超级碗”。

必备功能:

常见问题:

需要考虑的工具:

关于System设计面试问题都有哪些就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. 常见面试问题以及面试技巧
  2. 前端的面试题都有哪些

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

system

上一篇:如何理解Python进程

下一篇:如何获取HDMI接口EDID

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》