AMQP vs Websphere MQ

Jason Baker picture Jason Baker · Jun 30, 2010 · Viewed 13.2k times · Source

We're working on an application that supports AMQP for queuing. Some of our clients are using Websphere MQ. I'm just wondering at a high level how interchangeable these two protocols are in terms of functionality. I'm using celery, which should allow me to abstract out the lower-level stuff as long as I can write a Websphere MQ backend. What I'm trying to figure out is how difficult a challenge this will be.

Does Websphere MQ provide a superset of AMQP's functionality? Does either one have any "features" that might make my life difficult?

Answer

T.Rob picture T.Rob · Jun 30, 2010

UPDATE 23 June 2015
IBM has announced MQ Light which is their implementation of AMQP. their Statement of Direction says that they intend to deliver features to allow programs designed to run on MQ Light to run in MQ at some point in the future but have yet to announce when that will be. MQ Light is in open Beta as of this writing.


Getting payloads moved between these systems will be relatively straightforward with a simple bridging app that reads off one system and writes to the other. They both have queues and topics and explicit routing is possible.

The interesting parts include such fun concepts as...

  • Mapping reply-to destinations. Especially dynamic reply-to destinations.
  • Transactionality
  • Any kind of routing more complicated than "pick up off this queue/topic, put to this one. For example a gateway that routes to multiple destinations based on queue name.
  • Message-level security.
  • Mapping identities for connection-level security.
  • No possibility of end-to-end message encryption.

So if all you need is on the order of "get from AMQP:QUEUEA, put to WMQ:QUEUEB" and transactionality is not important you should have a an easy time of it. Beyond that it depends on exactly what you want to do.