In this post we will see how IBM MQ uses workload algorithm to find the destination queue manager . The steps are checked sequentially to find out possible destination for the incoming message sent by the application .
1.Queue PUT(Enabled/Disabled) .Queues that are not put enabled are eliminated as possible destinations.
2.Queue Manager Aliases that not put enabled are eliminated from possible destinations .
3.Local instance of the queue depends on use queue CLWLUSEQ attribute .This attribute is checked to see if the messages are to be routed if it exists and shared in the cluster .
4.Channel Rank (CLWLRANK) .All channels to queue managers with CLWLRANK less than the maximum rank of all the remaining channels or queue manager aliases are eliminated .
5.QUEUE Rank (CLWLRANK) . All the queue with a CLWLRANK less than the maximum rank of all the remaining queues are eliminated .
6. Resumed queue manages are chosen in preference over suspended queue managers .
7.Channel status is considered to find out the available destinations
8.Channel Net Priority – Channels with highest net priority is chosen.
9.Channel Priority (CLWLPRTY) – Channels with highest priority is chosen over the one with lower priority.
10.Queue Priority (CLWLPRTY) – Queue with highest priority is chosen over the one with loser priority .
11.Most recently used ( CLWLMRUC) . This attribute is checked to use only the most frequently used channels . The no of possible destinations is taken from this queue manager attribute .
12. Channel Weighting (CLWLWGHT).This attribute is checked to distribute the message to all the possible destination after all the previous checks are completed .
Remember the MQ takes order of preference from the top to bottom if the given points . Top one’s with highest priority than the lower once .
Apply these rules in a cluster to understand how the message are distributed among the available destination Queue mangers .
Let us see with a sample example to understand and apply the rules .