I am designing a Notification Engine (Java Based) which will be used as an one stop shop for various other systems to send notification to different channels (push notifications, SMS, email etc). I wish to build this system to use Kafka as a message broker component (there will be many other components as well).
My query is specific to app push notifications (our current system uses FCM topic based subscribed notifications coming from individual systems who publish). The New Notification Engine will be working as the Kafka Producer and publish messages in regular intervals ( as configured in the Scheduler Component of this system) to the topics. How do the app user get the notifications as soon as they are published ? I am assuming the apps here have to work as Kafka Consumer. What is the best way to achieve this ? Is Kafka REST Proxy an option for the Mobile Apps to act like Kafka Consumers ? Would it be overload for mobile app to handle all the consumer responsibility ?