Fanout is a process of delivering a post to all friends on a social media platform. There are two types of fanout models: push and pull. In the push model, the news feed is pre-computed and pushed to friends immediately. In the pull model, the news feed is generated in real-time and can be pulled by friends. A hybrid approach can be used to get benefits from both approaches without pitfalls. The hotkey problem associated with fanout on write can be mitigated using consistent hashing.
1.
2.
3.
4.
5.
6.
7.