IBM MQ server and mediated exchange scenarios
When we mediate a service integration bus destination, your mediation runs in a bus member and we specify a combination of mediation points and queue points to handle the messages that are mediated. When we interoperate with IBM MQ using IBM MQ server, we can use one of several mediated exchange scenarios.
Queue-type destinations assigned to an IBM MQ server bus member can be mediated in the same way as destinations assigned to other bus members. In addition to the mediation task described in Mediating a destination using an IBM MQ queue as the mediation point, IBM MQ server supports other mediation scenarios that you also set up using the administrative console ediation wizard.
Although IBM MQ server extends the way in which queue-type destinations can be mediated, the way in which topic spaces are mediated does not change.
To mediate a service integration bus destination, specify a mediation point, a queue point and a mediation execution point:
See IBM MQ queue points and mediation points.
- Mediation point
- The location where messages are placed before they are mediated. It can be either a service integration bus member (an application server or a cluster) or an IBM MQ queue.
- Queue point
- The location where messages are placed after they have been mediated. It can be either a service integration bus member (an application server or a cluster) or an IBM MQ queue. If there is a default forward routing path and the destination is a queue type destination, the queue point is unused. If the destination is a service type destination, the queue point is absent.
- Mediation execution point
- The server where the mediation process runs. If the mediation point is a service integration bus member then the mediation execution point is the same bus member as the mediation point.
IBM MQ server supports the following mediated exchange scenarios:
- Scenario 1: An IBM MQ mediation point and a service integration bus queue point. In this case, we must specify the mediation execution point.
- Scenario 2: An IBM MQ mediation point and an IBM MQ queue point. In this case, we can use a service integration bus mediation; we must specify the mediation execution point when we configure the mediation, as for scenario 1.
- Scenario 3: A service integration bus mediation point and an IBM MQ queue point. In this case, we do not have to specify the mediation execution point; WebSphere Application Server automatically allocates the bus member in which the mediation runs.
- Scenario 4: Alternatively, we can use an IBM MQ application or a message broker flow to mediate the destination. In this case, the application or broker flow retrieves messages from the mediation point (which is an IBM MQ queue), mediates the messages, then places the mediated messages on the queue point (which is also an IBM MQ queue). We do not specify a mediation execution point when we configure the mediation; instead, we specify that there is an external mediation process.
For a queue point, message producers place messages on the queue point and consumers receive messages from the queue point. For a mediation point, message producers place messages on the mediation point. The messages are mediated then put on a post-mediation queue point. Consumers receive messages from the post-mediation queue point.
Figure 1. Queue-type destinations assigned to a service integration bus bus member. Queue points and mediation points are queues of service integration bus messages held in service integration
For a queue point, message producers place messages on the queue point and consumers receive messages from the queue point. If the queue point is an IBM MQ queue point, message producers place messages on the IBM MQ queue and consumers receive the messages from the IBM MQ queue. For a mediation point, message producers place messages on the mediation point (an IBM MQ queue). The messages are mediated, perhaps by an external message broker flow, then put on a post-mediation queue point (another IBM MQ queue). Consumers receive messages from the post-mediation queue point.
Queue points and mediation points can be queues of IBM MQ messages held in IBM MQ. A message broker, or other IBM MQ application, can run mediations externally.
Scenario 1
In this scenario, we want to mediate a conventional queue-type destination where the queue point is a service integration bus queue point, and assign an IBM MQ queue as the mediation point (the input side of the destination). As the mediation point is an IBM MQ queue, a queue point must also be specified.
Messages arriving at the IBM MQ queue are processed by the mediation running in an application server. When the messages have been processed by the mediation, they are placed onto the service integration queue point. The mediation itself runs in the service integration bus member that is assigned as the mediation point.
For this scenario, complete the following steps using the Mediate destination wizard. These example steps assume that the destination is assigned to a service integration bus member:
- Navigate to the destinations collection panel for the bus that hosts the destination we want to mediate.
- Select the queue-type destination to mediate, then click Mediate. This starts the Mediate destination wizard.
- Step 1: Select the mediation to use to mediate the service integration bus destination.
- Step 2: Select an IBM MQ server bus member to host the mediation point.
- Step 3: Enter details of the IBM MQ queue that will be the mediation point.
- Step 4: Select a bus member where we want the mediation code to run.
- Step 5: Review the summary of changes we are about to make, then click Finish.
Scenario 2
In this scenario, we want to mediate an IBM MQ queue type, with an IBM MQ queue point, and assign an IBM MQ queue as the mediation point (the input side of the destination). As the mediation point is an IBM MQ queue, a mediation execution point must also be specified.
Messages arriving at the destination are processed by the mediation, then placed on the IBM MQ queue. The mediation itself runs in the service integration bus member that is assigned as the mediation point.
For this scenario, complete the following steps using the Mediate destination wizard. These example steps assume that the destination is assigned to an IBM MQ server bus member:
- Navigate to the destinations collection panel for the bus that hosts the destination we want to mediate.
- Select the queue-type destination to mediate, then click Mediate. This starts the Mediate destination wizard.
- Step 1: Select the mediation to use to mediate the service integration bus destination.
- Step 2: Select an IBM MQ server bus member to host the mediation point.
- Step 3: Enter details of the IBM MQ queue that will act as the mediation point.
- Step 4: Select the service integration bus member where we want the mediation to run.
- Step 5: Review the summary of changes we are about to make, then click Finish.
Scenario 3
In this scenario, we want to mediate an IBM MQ queue type and assign a service integration bus mediation point.
Messages arriving at the destination are processed by the mediation, then placed on the IBM MQ queue. The mediation itself runs in the service integration bus member that is assigned as the mediation point.
For this scenario, we must complete the following steps using the Mediate destination wizard. These example steps assume that the destination is assigned to an IBM MQ server bus member:
- Navigate to the destinations collection panel for the bus that hosts the destination we want to mediate.
- Select the queue-type destination to mediate, then click Mediate. This starts the Mediate destination wizard.
- Step 1: Select the mediation to use to mediate the service integration bus destination.
- Step 2: Select the service integration bus member to host the mediation point. The mediation code also runs in this bus member.
- Step 3: Review the summary of changes we are about to make, then click Finish.
Scenario 4
In this scenario, we want to mediate an IBM MQ queue type destination and assign an IBM MQ queue as the mediation point (the input side of the destination).
The mediation of messages is performed by an external process. Messages arriving at the IBM MQ queue are processed by the external process, then placed by the external process on the IBM MQ queue-type destination.
For this scenario, complete the following steps using the Mediate destination wizard. These example steps assume that the destination is assigned to an IBM MQ server bus member:
- Navigate to the destinations collection panel for the bus that hosts the destination we want to mediate.
- Select the queue-type destination to mediate, then click Mediate. This starts the Mediate destination wizard.
- Step 1: Select an external process to use for mediating the destination.
- Step 2: Enter details of the IBM MQ queue to act as the mediation point.
- Step 3: Review the summary of changes we are about to make, then click Finish.
Related:
IBM MQ queue points and mediation points Mediations Interoperation using an IBM MQ server Create a queue-type destination and assigning it to an IBM MQ queue Mediating a destination using an IBM MQ queue as the mediation point createSIBDestination command createSIBDestinations command mediateSIBDestination command unmediateSIBDestination command A practical introduction to message mediation -- Part 1 A practical introduction to message mediation -- Part 3 A practical introduction to message mediation -- Part 4 A practical introduction to message mediation -- Part 5