Message broker
Encyclopedia
Message broker is an intermediary program which translates the language of a system from one internationally recognized language to another by way of a telecommunications medium.
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:
) can work without a message broker. One pattern that requires a message broker is workload queues, that is message queue
s that are handled by multiple receivers. Such queues must be managed, transacted, and usually stored reliably, at a single point.
Pattern
A message broker is an architectural pattern for message validation, message transformation and message routing.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 model
Broker Functionality
Many messaging patterns (like publish/subscribePublish/subscribe
Publish–subscribe is a messaging pattern where senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers. Published messages are characterized into classes, without knowledge of what, if any, subscribers there may be...
) can work without a message broker. One pattern that requires a message broker is workload queues, that is message queue
Message queue
In computer science, message queues and mailboxes are software-engineering components used for interprocess communication, or for inter-thread communication within the same process. They use a queue for messaging – the passing of control or of content...
s 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
- DIPS Message Broker
- Apache ActiveMQApache ActiveMQApache ActiveMQ is an open source message broker which fully implements the Java Message Service 1.1 . It provides "Enterprise Features" like clustering, multiple message stores, and ability to use any database as a JMS persistence provider besides VM, cache, and journal persistency.Apart from...
- OpenAMQ
- Comverse Message Broker (Comverse TechnologyComverse TechnologyComverse Technology, Inc. , originally founded in Israel, is a technology company located in Woodbury, New York in the United States, that develops and markets telecommunications software. The company focuses on providing value-added services to telecommunication service providers, in particular to...
) - Antares Enovacom
- eSCL Message Broker (Interface & Control Systems)
- FUSE Message BrokerFUSE Message BrokerFuse Message Broker is an open source JMS message broker that is based on Apache ActiveMQ for use in enterprise IT organizations. It is certified, productized and fully supported by the people who wrote the code...
(enterprise ActiveMQ) - Financial Fusion Message Broker (SybaseSybaseSybase, an SAP company, is an enterprise software and services company offering software to manage, analyze, and mobilize information, using relational databases, analytics and data warehousing solutions and mobile applications development platforms....
) - JBoss MessagingJBoss MessagingJBoss Messaging is the JBoss enterprise asynchronous messaging system. It supersedes JBoss MQ as the default Java Message Service provider in JBoss Application Server 5....
(JBossJBossJBoss Application Server is an open-source Java EE-based application server. An important distinction for this class of software is that it not only implements a server that runs on Java, but it actually implements the Java EE part of Java...
) - Microsoft BizTalk ServerMicrosoft BizTalk ServerMicrosoft BizTalk Server, often referred to as simply "BizTalk", is an Enterprise Service Bus. Through the use of "adapters" which are tailored to communicate with different software systems used in an enterprise, it enables companies to automate business processes...
(MicrosoftMicrosoftMicrosoft Corporation is an American public multinational corporation headquartered in Redmond, Washington, USA that develops, manufactures, licenses, and supports a wide range of products and services predominantly related to computing through its various product divisions...
) - Oracle Message Broker (Oracle CorporationOracle CorporationOracle Corporation is an American multinational computer technology corporation that specializes in developing and marketing hardware systems and enterprise software products – particularly database management systems...
) - Proteus an open sourceOpen sourceThe term open source describes practices in production and development that promote access to the end product's source materials. Some consider open source a philosophy, others consider it a pragmatic methodology...
implementation by Info-Scape - WebSphere Message Broker (IBMIBMInternational Business Machines Corporation or IBM is an American multinational technology and consulting corporation headquartered in Armonk, New York, United States. IBM manufactures and sells computer hardware and software, and it offers infrastructure, hosting and consulting services in areas...
) - webMethods Message Broker (webMethods Message Broker)
- Cloverleaf (E-Novation Lifeline)
- SAP PI (SAP AGSAP AGSAP AG is a German software corporation that makes enterprise software to manage business operations and customer relations. Headquartered in Walldorf, Baden-Württemberg, with regional offices around the world, SAP is the market leader in enterprise application software...
) - Sapo Broker (Portugal TelecomPortugal TelecomPortugal Telecom is the largest telecommunications service provider in Portugal. Although it operates mainly in Portugal and Brazil, it has also a significant presence in Guinea-Bissau, Cape Verde, Mozambique, Timor-Leste, Angola, Kenya, the People's Republic of China, and São Tomé and...
) - Python Message Service
- e-Biz Impact (Sybase, Inc)
- Spread ToolkitSpread ToolkitThe Spread Toolkit is a computer software package that provides a high performance group communication system that is resilient to faults across local and wide area networks. Spread functions as a unified message bus for distributed applications, and provides highly tuned application-level...
- RabbitMQRabbitMQRabbitMQ is an open source message broker software , using the standard Advanced Message Queuing Protocol . The RabbitMQ server is written in Erlang and is built on the Open Telecom Platform framework for clustering and failover. Rabbit Technologies Ltd., acquired in April 2010 by VMware, develops...
(Mozilla Public LicenseMozilla Public LicenseThe Mozilla Public License is a free and open source software license. Version 1.0 was developed by Mitchell Baker when she worked as a lawyer at Netscape Communications Corporation and version 1.1 at the Mozilla Foundation...
, written in Erlang) - Axway Integration Broker
See also
- Publish/subscribePublish/subscribePublish–subscribe is a messaging pattern where senders of messages, called publishers, do not program the messages to be sent directly to specific receivers, called subscribers. Published messages are characterized into classes, without knowledge of what, if any, subscribers there may be...
- Comparison of business integration softwareComparison of business integration softwareThis article is a comparison of business integration and business process automation software.-Scope:Scope of this comparison:* Service-oriented architecture implementations;* Message-oriented middleware and message brokers;...
- Message-oriented middlewareMessage-oriented middlewareMessage-oriented middleware is software or hardware infrastructure supporting sending and receiving messages between distributed systems. MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple...