ibm-mq - 什么启动了我的 MQ channel ?

标签 ibm-mq ibm-midrange

prior question 开始我们发现了一些我无法通过 MQ channel 理解的行为。

在启动时,我们发出以下命令:

STRSBS SBSD(QMQM/QMQM)
STRMQM MQMNAME(IA001.QUEUE.MANAGER)
STRMQMCSVR MQMNAME(IA001.QUEUE.MANAGER)
STRMQMLSR MQMNAME(IA001.QUEUE.MANAGER)
DLYJOB DLY(300)
STRMQMMQSC SRCMBR(IA1_RESTRT) SRCFILE(MQSCRIPTS/MQSETUP) MQMNAME(IA001.QUEUE.MANAGER)

最后运行的脚本包含一系列 channel 启动命令。在此步骤中,我们会定期收到“正在使用” channel 的错误,并且在调查时我们发现该 channel 正在运行。

上面显示的延迟是最近引入的,因为我们认为在 channel 启动之前各个部分可能需要时间才能正常启动,但是这发现了一些奇怪的事情,因为我们遇到了三个 channel 的“正在使用”错误。

看来,给定时间, channel 会自行启动。但我无法弄清楚如何或为什么?我不是 100% 熟悉 channel 启动,但根据我从文档中了解到的信息,我们没有设置它——我扫描了一个配置转储,没有发现 INITQ( ) 的条目除了空白之外没有任何内容。

什么启动了我们的 channel ?我根本无法在我们的测试系统上复制这种行为。

最佳答案

如果 channel 在队列管理器上次结束之前处于重试状态,则在重新启动时会记住此状态,并且您的 channel 将在队列管理器重新启动时返回重试状态,然后可能会成功连接。

关于ibm-mq - 什么启动了我的 MQ channel ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16407523/

相关文章:

编译 amqsput0.c [MQ]

ibm-mq - 通过 MQ Explorer 连接容器中的远程队列管理器

java - 使用 Spring Boot 的 IBM MQ JMS 应用程序。出现异常 :IBM MQ call failed '2538' ('MQRC_HOST_NOT_AVAILABLE' )

c++ - C++ 和 MQ 的网络硬件优先级

ibm-midrange - CL : Path name contains embedded nulls (CPD018A)

shell - 在 IBM i - shell 上将文件列表中的文件存储在 tarball 中

linux - 有没有办法在远程队列管理器上发出命令?

c++ - 当客户端关闭连接时 send() 不报告 ENOTCONN (AS400)

java - java属性文件中的属性键

ibm-midrange - 带有预填充元素的 iSeries/IBM i 命令 (CMDSRC)