0

I am trying to learn Message oriented middle-ware (MOM), and in that pursuit referring to online material.

I understand that MOM is used to make two heterogeneous systems communicate by message passing.

I also came to know of various products like:

  • IBM MQ / IBM WebSphere MQ / IBM MQSeries
  • RabbitMQ
  • Apache ActiveMQ

Are these products implementation of concept Message oriented middle-ware? If so, is there any standard specification for MOM?

1 Answer 1

2

These products are typical MOM implementations. There are a few others as well. As for standards, AMQP and MQTT are two standard for MOM communication. While not specifications, they are simply wire level protocols.

Then there is JMS. It's more of a Java specification/API and less of a generic MOM spec, but it has been very influential for various messaging systems and is widely implemented among MOM providers.

6
  • Thanks for your answer. So MOM is a software product before the advent of JMS, is this correct to conclude? What is the relationship between JMS and MOM products? Commented Nov 20, 2017 at 20:13
  • 1
    JMS is specifically for Java, it does not exist in non JVM languages. From a .NET/Ruby/PHP/Python/C++/GO/etc. perspective, JMS is of no help. MOM is the generic concept. Commented Nov 20, 2017 at 20:18
  • Thanks again for your response. So, it is safe to conclude that MOM products don't necessarily need to implement JMS, but they do so as lot of applications are developed in Java. By the way is there a way for Java application to communicate with a MOM product (for example RabbitMQ) without using JMS API's? Is this viable? Commented Nov 20, 2017 at 20:21
  • While it is true that JMS does not exist in non JVM languages, there is an XMS API to connect to IBM MQ. XMS is the JMS spec implemented for non-Java languages. Commented Nov 21, 2017 at 20:34
  • Since MOM was around before JMS, some MOM products will have Java interfaces that were created prior to there being a JMS spec to follow. IBM MQ is one such example. There is a set of Java classes and well as a set of JMS classes to use with IBM MQ. Commented Nov 21, 2017 at 20:35

Not the answer you're looking for? Browse other questions tagged or ask your own question.