The app for independent voices

How does Netflix scale push messaging for millions of devices?

This post draws from an article published on Netflixโ€™s engineering blog. Hereโ€™s my understanding of how the online streaming giantโ€™s system works.

๐‘๐ž๐ช๐ฎ๐ข๐ซ๐ž๐ฆ๐ž๐ง๐ญ๐ฌ & ๐ฌ๐œ๐š๐ฅ๐ž

- 220 million users

- Near real-time

- Backend systems need to send notifications to various clients

- Supported clients: iOS, Android, smart TVs, Roku, Amazon FireStick, web browser

๐“๐ก๐ž ๐ฅ๐ข๐Ÿ๐ž ๐จ๐Ÿ ๐š ๐ฉ๐ฎ๐ฌ๐ก ๐ง๐จ๐ญ๐ข๐Ÿ๐ข๐œ๐š๐ญ๐ข๐จ๐ง

1. Push notification events are triggered by the clock, user actions, or by systems.

2. Events are sent to the event management engine.

3. The event management engine listens to specific events and forward events to different queues. The queues are populated by priority-based event forwarding rules.

4. The โ€œevent priority-based processing clusterโ€ processes events and generates push notifications data for devices.

5. A Cassandra database is used to store the notification data.

6. A push notification is sent to outbound messaging systems.

7. For Android, FCM is used to send push notifications. For Apple devices, APNs are used. For web, TV, and other streaming devices, Netflixโ€™s homegrown solution called โ€˜Zuul Pushโ€™ is used.

Source: Netflix Eng Blog. The original article is linked in the comment.

โ€”

Subscribe to our weekly newsletter to get a Free System Design PDF (158 pages): blog.bytebytego.com

Apr 14, 2023
at
4:03 PM

Log in or sign up

Join the most interesting and insightful discussions.