Topologies for AMQP clients with IBM MQ

Example topologies to help you develop your AMQP clients to work with IBM MQ .

  • AMQP clients communicating over IBM MQ
    We can use IBM MQ as the messaging provider for IBM MQ Light or any application that complies with AMQP 1.0. Although any AMQP 1.0 client can connect to an AMQP channel, some AMQP features are not supported, for example transactions or multiple sessions.
  • AMQP clients exchanging messages with IBM MQ applications
    By defining and starting an AMQP channel, MQ Light or AMQP 1.0 applications can publish messages that are received by existing MQ applications. Messages published through an AMQP channel are all sent to MQ topics, not MQ queues. An MQ application that has created a subscription using the MQSUB API call receives messages published by AMQP 1.0 applications, provided that the topic string or topic object used by the MQ application matches the topic string published by the AMQP client.
  • Configure AMQP clients to interact directly with applications on IBM MQ queues
    The IBM MQ AMQP implementation supports publish/subscribe only. AMQP clients cannot put messages to, or get messages from, IBM MQ queues directly. In order to allow publishing AMQP clients to send messages to an existing queue, or subscribing AMQP clients to receive messages that were put to a queue, create some additional objects.
  • Configure an AMQP client for high availability
    We can configure MQ Light or AMQP 1.0 applications to connect to the active instance of an IBM MQ multi-instance queue manager and fail over to the standby instance of the multi-instance queue manager in a high availability (HA) pair. To do this, you configure the AMQP application with two IP addresses and port pairs.
  • Configure publish/subscribe for AMQP clients
    AMQP clients can publish to a topic with an IBM MQ subscription that routes messages to an IBM MQ queue read by an existing application. If we want an MQ Light or AMQP 1.0 application to send messages to an existing IBM MQ application that is configured to read from a queue, we must define an administered IBM MQ subscription on the queue manager.
  • AMQP client using a queue alias to receive messages from an IBM MQ application
    An AMQP client can subscribe to a topic and receive messages put to an alias queue by an IBM MQ application. If we want an MQ Light or AMQP 1.0 application to receive messages from an existing IBM MQ application that is configured to put messages on a queue, we must define a queue alias (QALIAS) on the queue manager.
  • AMQP client submitting requests to and consuming responses from an application server
    An MQ Light or other AMQP client can submit requests to a message-driven bean running in an application server and consume responses from a reply topic. IBM MQ supports AMQP 1.0 applications setting a reply-to topic in the messages that IBM MQ publishes. When an AMQP message is published with the reply-to attribute set, the value of the reply-to field is set as a JMS property for JMS consumers to receive. This setting allows JMS consumers to read the reply-to topic from the message and send a response message back to the AMQP client.
  • Deploying MQ Light applications to an on-premises IBM MQ environment
    IBM MQ supports the IBM MQ Light messaging API, so we can use IBM MQ to deploy your MQ Light application to an on-premises IBM MQ environment.
  • Interoperability between IBM MQ Light and Apache Qpid JMS applications
    MQ Light and Apache Qpid™ JMS applications work in similar ways, and when subscribing to a topic, create IBM MQ subscriptions that follow the same naming convention.

Parent topic: Developing AMQP client applications


Related information