Migrating your existing applications to use shared queues
Migrating your existing queues to shared queues is described in the WebSphere MQ for z/OS System Administration Guide.
When you migrate your existing applications, consider the following things, which might work in a different way in the shared queue environment:
- Reason Codes
- When you migrate your existing applications to use shared queues, check for the new reason codes that can be issued.
- Triggering
- If you are using a shared application queue, triggering works on committed messages only (on a non-shared application queue, triggering works on all messages).
If you use triggering to start applications, you might want to use a shared initiation queue. Table 1 describes what you need to consider when deciding which type of initiation queue to use.
When to use a shared-initiation queue Non-shared application queue Shared application queue Non-shared initiation queue As for previous releases. If you use a trigger type of FIRST or DEPTH, we can use a non-shared initiation queue with a shared application queue. Extra trigger messages might be generated, but this setup is good for triggering long-running applications (like the CICS bridge) and provides high availability. For trigger type FIRST or DEPTH, a trigger message triggers an instance of the application on every queue manager that is running a trigger monitor and that does not already have the application queue open for input. One trigger message is generated for every queue manager; if there is more than one trigger monitor running against the non-shared local initiation queue, on a given queue manager, they will compete to process the message.
Shared initiation queue Do not use a shared initiation queue with a non-shared application queue. If you have a shared application queue that has a trigger type of EVERY, use a shared initiation queue or you will lose trigger messages. For trigger type FIRST or DEPTH, one trigger message is generated by each queue manager that has the named initiation queue open for input.
- MQINQ
- When you use the MQINQ call to display information about a shared queue, the values of the number of MQOPEN calls that have the queue open for input and output relate only to the queue manager that issued the call. No information is produced about other queue managers in the queue-sharing group that have the queue open.
Parent topic:
Application programming with shared queues
fg15400_