Message-oriented middleware

Message Oriented Middlewareasynchronous messagingmessage queuesmessage busmessage oriented designmessage-orientedmessagingmessaging middlewaremessaging systemMOM
Message-oriented middleware (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems.wikipedia
118 Related Articles

Distributed computing

distributeddistributed systemsdistributed system
Message-oriented middleware (MOM) is software or hardware infrastructure supporting sending and receiving messages between distributed systems.
There are many different types of implementations for the message passing mechanism, including pure HTTP, RPC-like connectors and message queues.

Middleware

integration brokermiddleware componentsmiddleware tools
The middleware creates a distributed communications layer that insulates the application developer from the details of the various operating systems and network interfaces.
Services that can be regarded as middleware include enterprise application integration, data integration, message oriented middleware (MOM), object request brokers (ORBs), and the enterprise service bus (ESB).

Loose coupling

loosely coupledlooser couplingloosely-coupled
They are different in that RPC- and ORB-based middleware create systems of tightly coupled components, whereas MOM-based systems allow for a looser coupling of components.
Loose coupling in broader distributed system design is achieved by the use of transactions, queues provided by message-oriented middleware, and interoperability standards.

Message queue

queueevent queuemailbox
In asynchronous systems, message queues provide temporary storage when the destination program is busy or not connected.
The message queue paradigm is a sibling of the publisher/subscriber pattern, and is typically one part of a larger message-oriented middleware system.

Message passing

message-passingmessagesmessage
MOM comprises a category of inter-application communication software that generally relies on asynchronous message-passing, as opposed to a request-response architecture.
Asynchronous messaging requires additional capabilities for storing and retransmitting data for systems that may not run concurrently, and are generally handled by an intermediary level of software (often called middleware); a common type being Message-oriented middleware (MOM).

Message broker

brokermessage-brokerqueue manager
The primary disadvantage of many message-oriented middleware systems is that they require an extra component in the architecture, the message transfer agent (message broker).
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).

Advanced Message Queuing Protocol

AMQPAdvanced Message Queuing Protocol (AMQP)AMQP 1.0
The Advanced Message Queuing Protocol (AMQP) is an approved OASIS and ISO standard that defines the protocol and formats used between participating application components, so implementations are interoperable.
The Advanced Message Queuing Protocol (AMQP) is an open standard application layer protocol for message-oriented middleware.

OASIS (organization)

OASISOrganization for the Advancement of Structured Information StandardsOASIS standards body
The Advanced Message Queuing Protocol (AMQP) is an approved OASIS and ISO standard that defines the protocol and formats used between participating application components, so implementations are interoperable.

Fan-out (software)

Fan-out
AMQP may be used with flexible routing schemes, including common messaging paradigms like point-to-point, fan-out, publish/subscribe, and request-response (note that these are intentionally omitted from v1.0 of the protocol standard itself, but rely on the particular implementation and/or underlying network protocol for routing).
In message-oriented middleware solutions, fan-out is a messaging pattern used to model an information exchange that implies the delivery (or spreading) of a message to one or multiple destinations possibly in parallel, and not halting the process that executes the messaging to wait for any response to that message.

Publish–subscribe pattern

publish/subscribepublish-subscribepublish–subscribe
AMQP may be used with flexible routing schemes, including common messaging paradigms like point-to-point, fan-out, publish/subscribe, and request-response (note that these are intentionally omitted from v1.0 of the protocol standard itself, but rely on the particular implementation and/or underlying network protocol for routing).
Publish–subscribe is a sibling of the message queue paradigm, and is typically one part of a larger message-oriented middleware system.

XMPP

Extensible Messaging and Presence ProtocolJabberJabber/XMPP
The eXtensible Messaging and Presence Protocol (XMPP) is a communications protocol for message-oriented middleware based on XML (Extensible Markup Language).
Extensible Messaging and Presence Protocol (XMPP) is a communication protocol for message-oriented middleware based on XML (Extensible Markup Language).

Java Message Service

JMSJava JMSJava Message Service (JMS)
The Java EE programming environment provides a standard API called JMS (Java Message Service), which is implemented by most MOM vendors and aims to hide the particular MOM API implementations; however, JMS does not define the format of the messages that are exchanged, so JMS systems are not interoperable.
The Java Message TSC Service (JMS) API is a Java message-oriented middleware API for sending messages between two or more clients.

Streaming Text Oriented Messaging Protocol

STOMP Streaming Text Oriented Messaging Protocol (STOMP)
Simple (or Streaming) Text Oriented Message Protocol (STOMP), formerly known as TTMP, is a simple text-based protocol, designed for working with message-oriented middleware (MOM).

Enterprise service bus

ESBESBsbus
Most providers of message-oriented middleware have adopted the enterprise service bus concept as de facto standard for a service-oriented architecture.

Enterprise Integration Patterns

enterprise integration patterns (a.k.a. messaging patterns)
Enterprise Integration Patterns is a book by Gregor Hohpe and Bobby Woolf and describes 65 patterns for the use of enterprise application integration and message-oriented middleware in the form of a pattern language.

Enterprise messaging system

EMSenterprise message modelMessaging protocol
EMS are also known as Message-Oriented Middleware (MOM)

High Level Architecture

high-level architectureHigh Level Architecture (simulation)HLA
The High-Level Architecture (HLA IEEE 1516) is an IEEE and SISO standard for simulation interoperability.
HLA is a Message-oriented middleware that defines as a set of services, provided by a C++ or Java API.

Modular programming

modulesmodularmodule
MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple operating systems and network protocols.

Operating system

operating systemsOScomputer operating system
MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple operating systems and network protocols.

Communication protocol

protocolcommunications protocolprotocols
MOM allows application modules to be distributed over heterogeneous platforms and reduces the complexity of developing applications that span multiple operating systems and network protocols. Central reasons for using a message-based communications protocol include its ability to store (buffer), route, or transform messages while conveying them from senders to receivers.

Message

communiquémessagingcommunique
Central reasons for using a message-based communications protocol include its ability to store (buffer), route, or transform messages while conveying them from senders to receivers.

Application software

applicationapplicationssoftware application
MOM comprises a category of inter-application communication software that generally relies on asynchronous message-passing, as opposed to a request-response architecture.

Communication software

Telecommunications softwarecommunicationcommunication app
MOM comprises a category of inter-application communication software that generally relies on asynchronous message-passing, as opposed to a request-response architecture.