Overview
Design a social platform where millions of people post, follow each other, and load a personal reverse-chronological timeline in under 200ms.
Requirements
- 01Let users post text or media (under 280 characters) and follow or unfollow others
- 02Build and deliver a home feed in under 200ms for 300M active users a day
- 03Handle celebrity accounts with 50M+ followers without a write storm
- 04Stay up 99.99% of the time, with eventually consistent feed reads
- 05Support infinite scroll and rank trending topics
Concepts in play
Fanout ServiceRedis ZSETKafkaGraph DBTimeline