In a typical MQ Cluster environment we will have many cluster queues and in each of the cluster queue definition has a parameter DEFBIND . By default the value is OPEN .When we put a message to MQ let say set of messages .it will open the queue to put the message which ever the first queue is open it will put the message and subsequent message re-use the same connection for subsequent messages until the new connection OPEN arrived .
DEFBIND value NOTFIXED will help to distribute the message to all the available cluster queue evenly by default using round robin algorithm . This is the main difference between a OPEN and NOTFIXED values in DEFBIND on a cluster queue .
For the load distribution some amount of control is given to the application as well.
Application can select one of the below on MQOPEN call .
If application doesn’t specify any option when initiate MQOPEN call then by default MQOO_BIND_AS_Q_DEF is used which means refer to the value from DEFBIND in the queue definition where it tries to open .
The value for this DEFBIND could be either OPEN or NOTFIXED
OPEN –> For the first message ,MQ applies workload algorithm and the rest of the message put in the same MQOPEN call are sent to the same destination as the first message .
NOTFIXED –>Every message sent by the application , cluster workload algorithm is applied and load balancing is done in a round robin fashion .