Recall & Review
beginner
What is the primary purpose of a notification system in software architecture?
To deliver timely messages or alerts to users or systems about events or updates, ensuring they stay informed and can take necessary actions.
Click to reveal answer
beginner
Name two common types of notifications in a notification system.
Push notifications (sent to devices or browsers) and email notifications (sent via email).
Click to reveal answer
intermediate
Why is it important to decouple the notification sender from the notification processor?
Decoupling allows the system to handle high loads better, improves scalability, and makes maintenance easier by separating concerns.
Click to reveal answer
intermediate
What role does a message queue play in a notification system?
It acts as a buffer to hold notification tasks, enabling asynchronous processing and smoothing out spikes in notification requests.
Click to reveal answer
advanced
How can a notification system ensure reliability and avoid losing notifications?
By using persistent storage for messages, retry mechanisms for failed deliveries, and acknowledgments to confirm receipt.
Click to reveal answer
Which component is best suited to handle spikes in notification requests?
✗ Incorrect
Message queues buffer incoming requests and allow asynchronous processing, helping to handle spikes smoothly.
What is a common way to send push notifications to mobile devices?
✗ Incorrect
Firebase Cloud Messaging is a widely used service to send push notifications to mobile devices.
Why should notification sending be asynchronous?
✗ Incorrect
Asynchronous sending prevents delays in the main application, improving responsiveness.
Which of the following is NOT a notification channel?
✗ Incorrect
Database indexing is a data optimization technique, not a notification channel.
What is a key benefit of using a retry mechanism in notification delivery?
✗ Incorrect
Retry mechanisms help deliver notifications even if initial attempts fail temporarily.
Explain the main components of a scalable notification system and how they interact.
Think about how messages flow from creation to delivery without blocking the main app.
You got /5 concepts.
Describe strategies to ensure reliability and fault tolerance in a notification system.
Consider what happens if a notification fails to send or the system crashes.
You got /5 concepts.
