Message broker

From Wikipedia, the free encyclopedia
Jump to: navigation, search

Message broker is an intermediary program which translates the language of a system from one globally acceptable language[clarify] to another by way of a telecommunications medium.


A message broker is an architectural pattern for message validation, message transformation and message routing.[1] It mediates communication amongst applications, minimizing the mutual awareness that applications should have of each other in order to be able to exchange messages, effectively implementing decoupling.

The purpose of a broker is to take incoming messages from applications and perform some action on them. The following are examples of actions that might be taken in the broker:

  • Route messages to one or more of many destinations
  • Transform messages to an alternative representation
  • Perform message aggregation, decomposing messages into multiple messages and sending them to their destination, then recomposing the responses into one message to return to the user
  • Interact with an external repository to augment a message or store it
  • Invoke Web services to retrieve data
  • Respond to events or errors
  • Provide content and topic-based message routing using the publish–subscribe pattern

Broker functionality[edit]

Many messaging patterns (like publish–subscribe) can work without a message broker. One pattern that requires a message broker is workload queues, that is message queues that are handled by multiple receivers. Such queues must be managed, transacted, and usually stored reliably, at a single point.

List of message broker software[edit]

See also[edit]


  1. ^ "Hub and Spoke [or] Zen and the Art of Message Broker Maintenance". Enterprise Integration Patterns. 2003-11-12. Retrieved 2010-10-14. 
  2. ^ "DIPS". 
  3. ^ Retrieved 2014-04-02.  Missing or empty |title= (help)
  4. ^ "DIPS". 
  5. ^ "". Retrieved 2010-10-14. 
  6. ^ "the eSCL Message Broker". Retrieved 2010-10-14. 
  7. ^ "IBM Integration Bus". 
  8. ^ "The Official Microsoft WPF and Windows Forms Site". Retrieved 2010-10-14. 
  9. ^ "Azure Service Bus". Retrieved 2014-12-12. 
  10. ^ "Niklas - An Open Source Message Broker". 
  11. ^ "Proteus - An Open Source EAI Message Broker". Retrieved 2010-10-14. 
  12. ^ "". Retrieved 2012-08-15. 
  13. ^ "SAP NetWeaver Capabilities - SOA Middleware". Retrieved 2010-10-14. 
  14. ^ "Sapo Broker - SOA Middleware". Retrieved 2010-10-14. 
  15. ^  Missing or empty |title= (help)
  16. ^ "WSO2-Message Broker".