
Tech Glossary
Message Broker
A Message Broker is a software component that facilitates communication between different applications, services, or systems by translating messages, routing them appropriately, and ensuring they are delivered reliably. It acts as an intermediary in a publish-subscribe or message queuing architecture, decoupling the sender (producer) and the receiver (consumer) to enable asynchronous, scalable, and resilient communication.
The core role of a message broker is to receive messages from one or more producers, process or transform them if necessary, and route them to the correct consumer(s). This routing can be based on rules, topics, queues, or headers, depending on the messaging model in use. By doing this, a message broker reduces direct dependencies between components and enables more flexible and loosely coupled system designs.
One of the major advantages of using a message broker is improved system decoupling and fault tolerance. Producers and consumers do not need to operate at the same time—if a consumer is temporarily unavailable, the broker can hold the message until it’s ready to receive it. Additionally, brokers can handle load balancing, message durability, retries, and dead-letter queues, which helps manage errors and ensures system reliability.
However, introducing a message broker also adds some complexity. It becomes a critical point in the architecture that must be highly available and properly secured. Poor configuration or lack of monitoring can lead to message delays, bottlenecks, or even data loss in extreme cases. It’s also essential to manage message schema versions and idempotency in distributed environments.
Popular message brokers include:
- Apache Kafka – optimized for high-throughput, distributed event streaming
- RabbitMQ – widely used for general-purpose messaging with support for complex routing
- ActiveMQ – a mature broker supporting multiple messaging protocols
- Amazon SQS – a fully managed message queue service on AWS
- Google Pub/Sub – cloud-native pub-sub system for real-time analytics and messaging
Message brokers operate primarily at the application layer but often interact closely with the transport layer to manage message delivery guarantees (e.g., at-least-once, exactly-once).
Learn more about Message Broker