magic_al
magic_al

Reputation: 2190

Interoperability of different messaging protocols used by ActiveMQ

Apaches's ActiveMQ supports a wide range of different protocols and makes it quite easy to find a cross-language-client.

From reading the documentation I get the impression that ActiveMQ is capable of translating protocols, although it is not stated explicitly. So for example a Java Client using AMQP protocol might queue a message which is fetched by a PHP client using STOMP.

My question is: Am I correct? If yes I wonder how ActiveMQ deals with different functionality supported by the protocols. For example AMQP states very clearly how messages might be queued while STOMP doesn't.

Upvotes: 0

Views: 227

Answers (1)

Petter Nordlander
Petter Nordlander

Reputation: 22279

Yes, ActiveMQ tries it's best to support interopability and transparency between clients.

It's important to note that internally all messages are mapped to a common format based on the JMS API specs.

So you can check out each protocol documentation page to see how various protocols are mapped to JMS. Specifically metadata and payload format.

For AMQP you can decide if you want to enable mapping over JMS-like format or simply pass the message "as-is". But no conversion is perfect, so the best you can do is to try out your case and see if it's good enough.

http://activemq.apache.org/stomp.html

http://activemq.apache.org/amqp.html

http://activemq.apache.org/mqtt.html

Upvotes: 1

Related Questions