System Design Notification System
Most feed systems either use fanout on read or fanout on write.
System design notification system. The system need to be scalable i need to be able to send a very large amount of notification without crashing either the application or the server. It is a naturally interruptive and invasive experience to various degrees. Instagram twitter stream all started out that way. Create a system queue each message added to this queue has a list of consumers and the content.
A notification is the product communicating with you while you are not using it. Having a well designed mass notification and emergency communications system in place to alert communicate and share information can save critical response time and potentially lives. You add a message to the main system queue that a is friends with b and consumers are both a and b. Because of that it is a very.
Lets say 2 people befriend each other. Working with building owners designers and architects we determine system performance requirements and the right basis of design. It is a two step process first a customer may type a message and choose a platform to send to and the notification s should be created to be processed either real time either later. Fanout on write is the more common choice.
To answer on some components of a scalable notification system. Design notification system and implementation implement server side pagination for notifications improve performance and reduce server response time. The two main types of notificaitons are toast notifications and inline notifications. Fanout on read is easier to build but getting a good 99th percentile load time is really tricky.
The main message pump processes each message and sends the message to all consumers.