Passing messages through your system
The configuration shows a channel delivering three messages with different destinations:
- 'QB at QMC'
- 'QB at QMD_norm'
- 'QB at QMD_PRIORITY'
You must pass the first message flow through your system unchanged; the second message flow through a different transmission queue and channel, while reverting the messages from the alias queue manager name 'QMD_norm' to the physical location 'QMD'; and the third message flow simply chooses a different transmission queue without any other change.
In a clustering environment, all messages are passed through the cluster transmission queue, SYSTEM.CLUSTER.TRANSMIT.QUEUE.
The following methods describe techniques applicable to a distributed-queuing environment:
Method 1: Using the incoming location name
When you are going to receive messages with a transmission header containing another location name, the simplest preparation is to have a transmission queue with that name, 'QMC' in this example, as a part of a channel to an adjacent queue manager. The messages are delivered unchanged.
Method 2: Using an alias for the queue manager
The second method is to use the queue manager alias object definition, but specify a new location name, 'QMD', as well as a particular transmission queue, 'TX1'. This action:
- Terminates the alias message flow set up by the queue manager name alias 'QMD_norm'. That is the named class of service 'QMD_norm'.
- Changes the transmission headers on these messages from 'QMD_norm' to 'QMD'.
Method 3: Selecting a transmission queue
The third method is to have a queue manager alias object defined with the same name as the destination location, 'QMD_PRIORITY', and use the definition to select a particular transmission queue, 'QMD_fast', and therefore another channel. The transmission headers on these messages remain unchanged.
Using these methods
For these configurations, prepare the:
- Input channel definitions
- Output channel definitions
- Transmission queues:
- QMC
- TX1
- QMD_fast
- Queue manager alias definitions:
- QMD_norm with 'QMD_norm to QMD via TX1'
- QMD_PRIORITY with 'QMD_PRIORITY to QMD_PRIORITY via QMD_fast'
Note that none of the message flows shown in the example changes the destination queue. The queue manager name aliases simply provide separation of message flows.