538|系统设计面试高频题目:设计Twitter
面试官说:
“设计一个Twitter/微博,支持用户发推、关注、获取信息流”
这道题几乎是大厂系统设计面试必考题,涉及的核心知识点:
- 关注关系存储
- Feed流设计
- 分页处理
需求分析
你要问的问题
你:
- 日活用户多少?
- 用户可以发多长的内容?(Twitter 280字,微博140字/长文)
- 用户可以关注多少人?有上限吗?
- 信息流怎么排序?按时间?按热度?
- 需要显示点赞、转发、评论数吗?
面试官:
- 日活1亿
- 微博140字起步,支持长文
- 关注上限1000人
- 信息流按时间倒序,有热度权重
- 需要实时显示点赞、转发数
关键约束
性能指标:
- 发推:1亿用户 * 1%发推率 / 天 = 1000万条/天 ≈ 1000 QPS
- 关注:1000万次/天 ≈ 100 QPS
- 读信息流:1亿用户 * 10次刷新/天 = 10亿次/天 ≈ 100000 QPS
核心特点:
- 读多写多(10:1)
- 关注关系复杂
- 需要高效生成信息流
两种信息流模式对比
这是这道题的核心!
订阅专栏 解锁全文

796

被折叠的 条评论
为什么被折叠?



