关于FAANG/BATJ常考题—设计Twitter的面试详解

本文详述了设计Twitter后端的面试流程,包括询问功能需求、估算并发访问量、拆分系统服务及确认数据存储。核心功能如发布推文、时间线、新闻推送和关注/取消关注被提出,同时讨论了数据库设计、缓存系统以及异步操作在处理follow/unfollow中的应用。文章还提到了消息队列在异步任务中的重要性。
摘要由CSDN通过智能技术生成

Twitter后端 作为一项大厂常考的面试题,很多人因为不清楚其中的原理,经常挂掉,今天我们重点来讲解!

首先先来了解下推特的架构

​如果面试官对你说:请设计一个twitter,你对面试官说的第一句话会是什么?

常见错误就是:关键词大师,上来就罗列一大堆的关键词,如:Load Balancer, Memcache, NodeJS, MongoDB, MySQL…这样的回答方式在面试中会对你非常不利。

正确的做法是

第一步:询问需要设计哪些功能

Step 1:Enumerate(把Twitter的功能一个个罗列出来)

• Register / Login

• User Profile Display / Edit

• Upload Image / Video *

• Search *

• Post / Share a tweet

• Timeline / News Feed

• Follow / Unfollow a user

Step 2:Sort (选出核心功能,因为你不可能这么短的时间什么都设计 ÿ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值