请输入您要查询的百科知识:

 

词条 Message broker
释义

  1. Purpose, functionality, and architecture

  2. List of message broker software

  3. See also

  4. References

A message broker (also known as an integration broker or interface engine[1]) is an intermediary computer program module that translates a message from the formal messaging protocol of the sender to the formal messaging protocol of the receiver. Message brokers are elements in telecommunication or computer networks where software applications communicate by exchanging formally-defined messages.[1] Message brokers are a building block of message-oriented middleware (MOM) but are typically not a replacement for traditional middleware like MOM and remote procedure call (RPC).[2][3]

Purpose, functionality, and architecture

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

The primary purpose of a broker is to take incoming messages from applications and perform some action on them. Message brokers can decouple end-points, meet specific non-functional requirements, and facilitate reuse of intermediary functions. For example, a message broker may be used to manage a workload queue or message queue for multiple receivers, providing reliable storage, guaranteed message delivery and perhaps transaction management. The following represent other examples of actions that might be handled by the broker[2][3]:

  • Route messages to one or more 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

Message brokers are generally based on one of two fundamental architectures: hub-and-spoke and message bus. In the first, a central server acts as the mechanism that provides integration services, whereas with the latter, the message broker is a communication backbone or distributed service that acts on the bus.[3] Additionally, a more scalable multi-hub approach can be used to integrate multiple brokers.[3]

List of message broker software

  • Amazon Web Services (AWS) Simple Queue Service (SQS)
  • Apache ActiveMQ
  • Apache Kafka
  • Apache Qpid
  • Cloverleaf (E-Novation Lifeline)
  • Comverse Message Broker (Comverse Technology)
  • Eclipse Mosquitto MQTT Broker (Eclipse Foundation)
  • Enduro/X Transactional Message Queue (TMQ)
  • Financial Fusion Message Broker (Sybase)
  • Fuse Message Broker (enterprise ActiveMQ)
  • Gearman
  • HornetQ (Red Hat)
  • IBM App Connect
  • IBM MQ
  • JBoss Messaging (JBoss)
  • JORAM
  • Microsoft Azure Service Bus (Microsoft)
  • Microsoft BizTalk Server (Microsoft)
  • NATS (MIT Open Source License, written in Go)
  • Open Message Queue
  • Oracle Message Broker (Oracle Corporation)
  • RabbitMQ (Mozilla Public License, written in Erlang)
  • Redis An open source, in-memory data structure store, used as a database, cache and message broker.
  • SAP PI (SAP AG)
  • Solace PubSub+
  • Spread Toolkit
  • Tarantool, a NoSQL database, with a set of stored procedures for message queues
  • TIBCO Enterprise Message Service
  • WSO2 Message Broker

See also

  • Publish–subscribe pattern
  • Comparison of business integration software
  • Message-oriented middleware

References

1. ^{{cite web |url=https://www.gartner.com/it-glossary/ib-integration-broker |title=IB (integration broker) |work=IT Glossary |publisher=Gartner, Inc |accessdate=17 May 2018}}
2. ^{{cite book |url=https://books.google.com/books?id=1IuZBQAAQBAJ&pg=PA117 |chapter=Integration Technologies |title=Guide to Cloud Computing for Business and Technology Managers: From Distributed Computing to Cloudware Applications |author=Kale, V. |publisher=CRC Press |pages=107–134 |year=2014 |isbn=9781482219227 |accessdate=17 May 2018}}
3. ^{{cite book |url=https://books.google.com/books?id=2EonCgAAQBAJ&pg=PA71 |chapter=Integration Brokers and Web Services |title=Web Services Business Strategies and Architectures |author=Samtani, G. |author2=Sadhwani, D. |editor=Clark, M. |editor2=Fletcher, P. |editor3=Hanson, J.J. |display-editors=etal |publisher=Apress |pages=71–84 |year=2013 |isbn=9781430253563 |accessdate=17 May 2018}}
4. ^{{cite book |chapter=Asynchronous Processing |title=Web Scalability for Startup Engineers |author=Ejsmont, A. |publisher=McGraw Hill Professional |pages=275–276 |year=2015 |isbn=9780071843669}}
{{network-software-stub}}

2 : Middleware|Software design patterns

随便看

 

开放百科全书收录14589846条英语、德语、日语等多语种百科知识,基本涵盖了大多数领域的百科知识,是一部内容自由、开放的电子版国际百科全书。

 

Copyright © 2023 OENC.NET All Rights Reserved
京ICP备2021023879号 更新时间:2024/9/20 6:13:35