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 (选出核心功能,因为你不可能这么短的时间什么都设计 ÿ