Message exchange through a WebSphere MQ link
A WebSphere MQ link connects to a specific foreign bus that represents a WebSphere MQ network, and enables messaging engines on a service integration bus to exchange messages with queue managers on the WebSphere MQ network.
The figure later in this section shows a high level view of the function of a WebSphere MQ link. Subsequent figures add more detail to this simple representation.
Figure 1. Exchanging messages between WebSphere Application Server and a WebSphere MQ network.
A WebSphere MQ link is a service integration technologies administrative object that describes the attributes required for a messaging engine to establish channel links to a WebSphere MQ queue manager or (for WebSphere MQ for z/OS ) queue-sharing group.
The messaging engine that connects to WebSphere MQ by using a WebSphere MQ link is known as the gateway messaging engine. The WebSphere MQ queue manager or queue-sharing group to which a WebSphere 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 WebSphere MQ by using a WebSphere 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.
Figure 2. Exchanging messages between a service integration bus, and a foreign bus in a WebSphere MQ network.
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 WebSphere MQ. In a similar way, the gateway queue manager receives messages from the WebSphere MQ link and routes them to other queue managers in the WebSphere MQ network. The gateway queue manager and the other queue managers to which it connects are together represented as a foreign bus when you configure the WebSphere MQ link.
A WebSphere MQ link cannot use cluster-sender and cluster-receiver channels to connect to multiple queue managers in a WebSphere MQ cluster. Even if the gateway queue manager is a member of a cluster, the WebSphere 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 engines on the same bus and other queue managers connected to the gateway queue manager.
Figure 3. Exchanging messages between messaging engines on a bus and queue managers connected to the gateway queue manager on a foreign bus.
A WebSphere MQ link can have definitions for a WebSphere MQ link sender or a WebSphere MQ link receiver or both. The link sender and receiver emulate the behavior of WebSphere 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 the sender and receiver channels that enable the gateway messaging engine and the gateway queue manager to exchange messages.
Figure 4. Exchanging messages between WebSphere MQ link sender and receiver channels, and a gateway queue manager with receiver and sender channels.
The figure later in this section shows how an individual message passes from the gateway messaging engine with a WebSphere MQ link, to the target queue in the WebSphere MQ network, and how a response message is returned over the WebSphere MQ link to a reply-to destination in WebSphere Application Server.
- A service integration JMS application sends a request message to a target destination, which is a JMS destination that points to a WebSphere 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 WebSphere MQ link to send the message to WebSphere MQ. WebSphere MQ puts the message on the target queue.
- The WebSphere 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 WebSphere MQ
We can configure a publish/subscribe bridge on a WebSphere MQ link. The bridge allows subscribing applications connected to the service integration bus to receive messages from publishing applications connected to the WebSphere MQ network. The same publish/subscribe bridge allows subscribing applications connected to the WebSphere MQ network to receive messages from publishing applications connected to the service integration bus.
To specify service integration bus destination attributes for a WebSphere MQ queue, or to control access to a WebSphere MQ queue from service integration bus applications, then we can define a foreign destination to represent the WebSphere MQ queue. If we want the service integration bus applications to use a different name for the WebSphere MQ queue then we can define an alias destination.
The WebSphere MQ link communicates with WebSphere MQ by using WebSphere MQ format and protocols. To identify a supported version of WebSphere MQ, see the supported hardware and software web page at WebSphere Application Server detailed system requirements.
Subtopics
- WebSphere MQ link sender
The WebSphere MQ link sender converts messages to WebSphere MQ format messages, and then sends them to a receiver channel on the WebSphere MQ gateway queue manager or (for WebSphere MQ for z/OS) queue-sharing group.
- WebSphere MQ link receiver
The WebSphere MQ link receiver receives messages sent to a messaging engine over a WebSphere MQ link. The messages are sent from a sender channel on a WebSphere MQ gateway queue manager or (for WebSphere MQ for z/OS) queue-sharing group in a WebSphere MQ network to a WebSphere MQ link on a messaging engine.
Related concepts
WebSphere MQ link sender WebSphere MQ link receiver Publish/subscribe messaging through a link
Related tasks
Create a new WebSphere MQ link