A notification service is a system responsible for delivering timely and relevant information to users across various channels such as SMS, email, push notifications, and in-app messages.
This was quite amazing and super super helpful. I am an experienced coder but have not had many opportunities to design high scale systems at work or in practice so this is going to help me a ton.
This is awesome content. Just few points to add on if you agree:
1) Syncing mechanisms between Cache and User Preferences NoSQL db to ensure consistency
2) How does Cache payload look like along with the key
3) Cache TTL, eviction strategy, invalidation strategy, cache writing strategy, dealing with a data level conflict (discrepancy between current cache and NoSQL db entry)
4) Deduplication of notification so that users don’t get same notification again
Great insights. This article helps how to think widely considering every aspect while designing a scalable and reliable system. Can you provide some example for scheduler service readily available to use? Also, you can provide a deeper explanation of how a scheduler service should be designed.
How will you partition the Kafka topics to support such a large workload? Also, we are sending large email attachments on the Kafka queue, won't this affect the performance, anything we can do to mitigate it?
This was quite amazing and super super helpful. I am an experienced coder but have not had many opportunities to design high scale systems at work or in practice so this is going to help me a ton.
Really happy to hear this, thank you so much!
Impressive! You are truly a gem. Thank you for dedicating your time and sharing such valuable content with crystal-clear clarity.
Thank you 😊
Love to hear this.
Great content brother
thank you!
Thanks for sharing.
you are welcome!
Ashish,
This is awesome content. Just few points to add on if you agree:
1) Syncing mechanisms between Cache and User Preferences NoSQL db to ensure consistency
2) How does Cache payload look like along with the key
3) Cache TTL, eviction strategy, invalidation strategy, cache writing strategy, dealing with a data level conflict (discrepancy between current cache and NoSQL db entry)
4) Deduplication of notification so that users don’t get same notification again
Great insights. This article helps how to think widely considering every aspect while designing a scalable and reliable system. Can you provide some example for scheduler service readily available to use? Also, you can provide a deeper explanation of how a scheduler service should be designed.
How will you partition the Kafka topics to support such a large workload? Also, we are sending large email attachments on the Kafka queue, won't this affect the performance, anything we can do to mitigate it?