集群队列的 MQOPEN 选项
用于队列句柄的绑定取自 DefBind 队列属性(可采用值 MQBND_BIND_ON_OPEN、MQBND_BIND_NOT_FIXED 或 MQBND_BIND_ON_GROUP)。
要通过同一路由将所有使用 MQPUT 放入队列的消息路由到同一队列管理器,请在 MQOPEN 调用上使用 MQOO_BIND_ON_OPEN 选项。
要指定将在 MQPUT 时选择目标 (即,逐个消息) ,请在 MQOPEN 调用上使用 MQOO_BIND_NOT_FIXED 选项。
要指定将使用 MQPUT 放入队列的 消息组 中的所有消息分配给同一目标实例,请在 MQOPEN 调用上使用 MQOO_BIND_ON_GROUP 选项。
将 消息组 与集群配合使用时,必须指定 MQOO_BIND_ON_OPEN 或 MQOO_BIND_ON_GROUP ,以确保在同一目标处处理组中的所有消息。
如果未将这些选项中任一选项指定为缺省值,那么会使用 MQOO_BIND_AS_Q_DEF。
如果在 MQOD 中指定队列管理器的名称,那么会选择此队列管理器处的队列。 如果队列管理器名称为空,那么可选择任何实例。 请参阅 MQOPEN 和集群 以获取更多信息。
如果使用 QALIAS 定义打开集群队列,那么一些队列属性通过别名队列而不是基本队列定义。 集群属性属于别名队列覆盖的基本队列定义的属性。 例如,在以下片段中,集群队列使用
MQOO_BIND_NOT FIXED 而不是 MQOO_BIND_ON_OPEN 打开。 集群队列定义在集群中公开时,别名队列定义对于队列管理器是本地的。DEFINE QLOCAL(CLQ1) CLUSTER(MYCLUSTER) DEFBIND(OPEN) REPLACE
DEFINE QALIAS(ACLQ1) TARGET(CLQ1) DEFBIND(NOTFIXED) REPLACE