What is message-oriented middleware?

Viewed 17188

I've been trying to figure out exactly what message-oriented middleware is, but haven't been able to find any non-enterprise real world examples that make sense to me. Can anyone give me a clear and easily understandable explanation of what MOM is, and possibly some simple examples of how it's used outside of enterprise?

5 Answers

In short

Message Oriented Middleware (MOM): The purpose of Message Oriented Middleware (MOM) is to make incompatible or otherwise very different applications/systems/platforms (endpoints) able to communicate in a shared format.

The primary components used for messaging

How does the applications on the systems talk to the middleware software?

Message Queue Interface (MQI): This is an API that have different function (calls) that makes the business application able to communicate with a queue manager (QM).

How does the systems send messages between them?:

Message Queueing (MQ): Communication is done by sending/recieving messages (data) to queues rather than directly to the sending/recieving application/system.

Note: There a multiple types of queues that serves different operations before/after a message can be sent/recieved.

Broker: The broker translates these messages between the application/system.

Queue Manager (QM): This manages the queues and communicates with other queue managers on different systems, so that a message from queue(A) on system A will be sent and put on queue(B) on system B.

Message Channels: The queue manager communicates with the other queue managers through a message channel.

Check out the technical explanations from IBM's version of MOM: https://www.ibm.com/support/knowledgecenter/SSFKSJ_8.0.0/com.ibm.mq.pro.doc/q002620_.htm

Check out this channel - It has solid concise down to earth explanations about this subject.

https://www.youtube.com/watch?v=5-0sv-sRmGw&list=PLqnWYrfCqvm5ZdT4je7vjdyLf9_dPK6Kc&index=33

Related