Home
Clustering with intra-group queuing (multiple delivery paths)
It is possible to configure queue managers so that they are in a cluster as well as in a queue-sharing group. When messages are sent to a cluster queue and the local and remote destination queue managers are in the same queue-sharing group, intra-group queuing is used for the delivery of small messages (using the SYSTEM.QSG.TRANSMIT.QUEUE) , while the SYSTEM.CLUSTER.TRANSMIT.QUEUE is used for the delivery of large messages. Also, the SYSTEM.CLUSTER.TRANSMIT.QUEUE is used for the delivery of messages to any queue manager that is in the cluster, but outside the queue-sharing group. The following diagram illustrates this configuration (the channel initiators are not shown).
Figure 1. An example of clustering with intra-group queuing
The diagram shows:
- Four z/OS queue managers QMG1, QMG2, QMG3 and QMG4 configured in a cluster CLUS1.
- Queue managers QMG1, QMG2 and QMG3 configured in a queue-sharing group SQ26.
- IGQ agents running on queue managers QMG2 and QMG3.
- The local SYSTEM.CLUSTER.TRANSMIT.QUEUE defined in QMG1.
- The shared SYSTEM.QSG.TRANSMIT.QUEUE defined in the CF.
- Cluster channels TO.QMG2 (connecting QMG1 to QMG2), TO.QMG3 (connecting QMG1 to QMG3), and TO.QMG4 (connecting QMG1 to QMG4).
- Cluster queue CLUSQ1 being hosted on queue managers QMG2, QMG3 and QMG4.
Assume that the requesting application opens the cluster queue with the MQOO_BIND_NOT_FIXED option, so that the target queue manager for the cluster queue is selected at put time.
If the selected target queue manager is QMG2:
- All large messages put by the requesting application are
- Put to the SYSTEM.CLUSTER.TRANSMIT.QUEUE on QMG1
- Transferred to cluster queue CLUSQ1 on QMG2 using cluster channel TO.QMG2
- All small messages put by the requesting application are
- Put to the shared transmission queue SYSTEM.QSG.TRANSMIT.QUEUE
- Retrieved by the IGQ agent on QMG2
- Put to the cluster queue CLUSQ1 on QMG2
If the selected target queue manager is QMG4:
- Because QMG4 is not a member of queue-sharing group SQ26, all messages put by the requesting application are
- Put to the SYSTEM.CLUSTER.TRANSMIT.QUEUE on QMG1
- Transferred to cluster queue CLUSQ1 on QMG4 using cluster channel TO.QMG4
Parent topic:
Configurations
ic16150_
Home