如何将消息从本地队列管理器发送到本地队列的另一个队列管理器

How to destined messages from an local queue manger to another queue manager of an local queue

嗨,我正在准备考试。 谁能帮我找到正确答案。

应用程序连接到本地队列管理器 QM1 并将消息放入远程队列 QR1。


假设 QM2 和 QM3 互连,系统管理员需要进行哪些更改才能实现此目的而不会出现应用程序故障?

一个。在 QM2 上创建一个指向 QM3 上的 QL3 的别名队列。

乙。在 QM2 上创建一个指向 QM3 上的 QL3 的远程队列。

C.使用 XMITQ QM2 更改 QR1 RQMNAME 参数以指向 QM3 和 RNAME 参数以指向 QL3。

D.使用 XMITQ QM3 更改 QR1 RQMNAME 参数以指向 QM3 和 RNAME 参数以指向 QL3。

鉴于问题中提供的详细信息和提供的四个答案,C 是最正确的。

如果 QR1 在更改时由应用程序打开以供输出,则仍可能对应用程序产生影响。应用程序需要在 QREMOTE 被更改时停止,或者需要使用 FORCE 选项,在这种情况下,应用程序将在下次尝试将消息发送到时收到 MQRC 2041 (MQRC_OBJECT_CHANGED)队列。 FORCE 选项将要求应用程序处理该异常并重新打开队列,许多应用程序不处理此异常,因此可能需要重新启动。

这个答案还假设从 QM1 到 QM2 的 RCVR 通道没有被低权限 MCAUSER 锁定,或者如果它被锁定,它将有权放置 XMITQ QM3。

如果首先删除 QM2 上的原始本地队列 QL2 并在 QM2 上定义一个名为 QL2 的新远程队列,它将指向 QM3 上的 QL3,则答案 B 也可能是一个潜在的解决方案。