我想我试图启动一个已经运行的频道或其他什么。每当我启动发送方通道时,接收方通道都会进入PAUSED状态。 I looked it up并发现了一些关于AdoptNewMCA配置的内容,不知道如何在队列管理器级别设置它。我该如何顺利解决这个问题。仅停止并重新启动频道不会这样做。
错误日志说:
/02/2012 12:38:41 PM - Process(19161.269) User(mqm) Program(amqrmppa)
Host() Installation(Installation1)
VRMF(7.1.0.0) QMgr(QM_TEST2)
AMQ9514: Channel 'QM_TEST1.TO.QM_TEST2' is in use.
EXPLANATION: The requested operation failed because channel
''QM_TEST1.TO.QM_TEST2' is currently active. ACTION: Either end the channel
manually, or wait for it to close, and retry the operation.
----- amqrcsia.c : 1042 -------------------------------------------------------
08/02/2012 12:38:41 PM - Process(19161.269) User(mqm) Program(amqrmppa)
Host(...) Installation(Installation1)
VRMF(7.1.0.0) QMgr(QM_TEST2)
AMQ9999: Channel ''QM_TEST1.TO.QM_TEST2' to host '17.2.33.44' ended abnormally.
EXPLANATION: The channel program running under process ID 19161 for
channel ''QM_TEST1.TO.QM_TEST2' ended abnormally. The host name is
'17.2.33.44'; in some cases the host name cannot be
determined and so is shown as '????'. ACTION: Look at previous error
messages for the channel program in the error logs to determine the
cause of the failure. Note that this message can be excluded
completely or suppressed by tuning the "ExcludeMessage" or
"SuppressMessage" attributes under the "QMErrorLog" stanza in qm.ini.
Further information can be found in the System Administration Guide.
----- amqrmrsa.c : 887 --------------------------------------------------------
答案 0 :(得分:1)
在查看这些内容时,我先从产品手册开始。在这种情况下,信道状态says that上的信息中心主题处于PAUSED状态的信道正在等待重试间隔。 sub-topic on channel errors解释了为什么发送或接收频道可以重试:
如果某个频道无法将消息发送到目标队列,因为 该队列已满或被禁止,通道可以重试 多次操作(在消息重试计数中指定) 属性)在一个时间间隔(在消息重试间隔中指定) 属性)。或者,您可以编写自己的消息重试出口 确定哪种情况导致重试,以及数量 尝试了。在等待时,通道进入PAUSED状态 消息重试间隔完成。
因此,如果您停止频道,则应在发送方的XMitQ中看到一条消息。如果您启用该队列GET,则可以浏览该消息,查看标题并查看其目的地。在接收方,查看该队列是否已满。
这里的经典快速发送者,缓慢消费者问题。如果消费者无法跟上,消息会在接收QMgr上备份,然后通道将重试并开始备份发送QMgr。必须监视请求队列的深度和输入句柄。
答案 1 :(得分:0)
确保设置了DLQ。
尝试将消息重试次数减少到1,以加快DLQ的使用。