Message exchange through an IBM MQ link
An IBM MQ link connects to a foreign bus that represents an IBM MQ network, and enables messaging engines on a service integration bus to exchange messages with queue managers on the IBM MQ network.
An IBM MQ link is a service integration technologies administrative object that describes the attributes required for a messaging engine to establish channel links to an IBM MQ queue manager or (for IBM MQ for z/OS) queue-sharing group.
The messaging engine that connects to IBM MQ using an IBM MQ link is known as the gateway messaging engine. The IBM MQ queue manager or queue-sharing group to which an IBM MQ link connects is known as the gateway queue manager. To service integration, the gateway queue manager and any other queue managers connected to it appear to be a foreign bus, which is another bus that has a link to the local bus. To the gateway queue manager, the service integration bus appears to be a remote queue manager.
The figure later in this section shows an application server that is a member of a bus and therefore contains a messaging engine. The messaging engine is a gateway messaging engine, which means it connects to a gateway queue manager within IBM MQ using an IBM MQ link. The link appears to the gateway queue manager as a message channel - that is, a sender channel, a receiver channel, or a sender-receiver pair of channels.
Other messaging engines on the same service integration bus can use the gateway messaging engine to send messages to, and receive messages from, the gateway queue manager on IBM MQ. In a similar way, the gateway queue manager receives messages from the IBM MQ link and routes them to other queue managers in the IBM MQ network. The gateway queue manager and the other queue managers to which it connects are together represented as a foreign bus when we configure the IBM MQ link.
An IBM MQ link cannot use cluster-sender and cluster-receiver channels to connect to multiple queue managers in an IBM MQ cluster. Even if the gateway queue manager is a member of a cluster, the IBM MQ link must still connect directly to the gateway queue manager. The gateway queue manager manages routing of messages to other queue managers in the cluster.
The figure later in this section shows how messages exchanged between the gateway messaging engine and the gateway queue manager, can be sent and received by other messaging engine on the same bus and other queue managers connected to the gateway queue manager.
An IBM MQ link can have definitions for an IBM MQ link sender or an IBM MQ link receiver or both. The link sender and receiver emulate the behavior of IBM MQ sender and receiver channels. The MQ link sender therefore sends messages to the receiver channel of the gateway queue manager, and the MQ link receiver receives messages from the sender channel of the gateway queue manager.
The figure later in this section shows how an individual message passes from the gateway messaging engine with an IBM MQ link, to the target queue in the IBM MQ network, and how a response message is returned over the IBM MQ link to a reply-to destination in WAS.
- A service integration JMS application sends a request message to a target destination, which is a JMS destination that points to an IBM MQ queue. The sending application includes the reply-to destination in a header field in the request message. The reply-to destination is a JMS destination that points to a service integration destination in the same service integration bus to which the sending application is attached.
- The messaging engine in the service integration bus uses the IBM MQ link to send the message to IBM MQ. IBM MQ puts the message on the target queue.
- The IBM MQ application receives the message from the queue, processes it, and sends a response to the reply-to destination. This application might be, but is not always, a JMS application.
Figure 5. Paths taken by a message and response exchanged between a messaging engine on a bus and a queue manager in IBM MQ
We can configure a publish/subscribe bridge on an IBM MQ link. The bridge allows subscribing applications connected to the service integration bus to receive messages from publishing applications connected to the IBM MQ network. The same publish/subscribe bridge allows subscribing applications connected to the IBM MQ network to receive messages from publishing applications connected to the service integration bus.
To specify service integration bus destination attributes for an IBM MQ queue, or to control access to an IBM MQ queue from service integration bus applications, then we can define a foreign destination to represent the IBM MQ queue. If we want your service integration bus applications to use a different name for the IBM MQ queue then we can define an alias destination.
The IBM MQ link communicates with IBM MQ using IBM MQ format and protocols. To identify a supported version of IBM MQ, see the supported hardware and software web page at WAS detailed system requirements.
Subtopics
Related:
Interoperation using an IBM MQ link Publish/subscribe messaging through an IBM link