A message broker is a software or service that acts as an intermediary between applications that need to communicate with each other. It receives messages from applications, stores them, and then forwards them to the appropriate destination when it is time for the message to be delivered. This allows for a separation of concerns between the applications, as they do not need to be directly connected to each other or aware of each other’s implementation details.
There are several types of message brokers:
- Point-to-point message brokers: These brokers deliver messages from a sender to a specific recipient.
- Publish-subscribe message brokers: These brokers deliver messages to multiple subscribers who have expressed interest in a particular topic or channel.
- Request-reply message brokers: These brokers facilitate communication between a sender and a recipient by allowing the recipient to reply to the sender’s message.
There are many open source message brokers available, including: