Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

AMQP vs Websphere MQ

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?

like image 765
Jason Baker Avatar asked Jun 30 '10 17:06

Jason Baker


People also ask

Does IBM MQ uses AMQP?

The IBM® MQ Light API is based on the OASIS Standard AMQP 1.0 wire protocol. AMQP specifies how messages are sent between senders and receivers.

What is the difference between IBM MQ and WebSphere MQ?

IBM MQ is a family of message-oriented middleware products that IBM launched in December 1993. It was originally called MQSeries, and was renamed WebSphere MQ in 2002 to join the suite of WebSphere products. In April 2014, it was renamed IBM MQ.

What is the difference between IBM MQ and RabbitMQ?

ActiveMQ is used in enterprise projects to store multiple instances and supports clustering environments based on the JMS messaging specification. RabbitMQ is a message broker which is executed in low-level AMQP protocol and acts as an intermediator between two application in the communication process.

What is AMQP used for?

The Advanced Message Queuing Protocol (AMQP) is an open standard for passing business messages between applications or organizations. It connects systems, feeds business processes with the information they need and reliably transmits onward the instructions that achieve their goals.


1 Answers

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.

like image 186
T.Rob Avatar answered Nov 02 '22 22:11

T.Rob