I realized that EventStoreDB can fully act as a message broker using CatchUp subscriptions. This raises the question whether there is any need for a message broker like Apache Kafka and RabbitMQ? I am asking because in literature and in many articles, people use message broker to integrate between event-driven services.
Please correct me if I am wrong: In an event-driven microservices architecture, two services can be integrated using EventStoreDB’s subscription mechanisms. There is no need to publish events to a message broker and let the “subscriber service” read from a message queue. The same events can be read by just reading directly from the database.
So, are there any use cases where you want to use a message broker for integrating instead of EventStoreDB?
Thanks a lot in advance for your answers