由于需要跟海关之间进行数据交换,安装了MQ7.0.1,正常安装,但发现海关对我们的发送接收通道正常运行,但是我们发送海关接收的通道程序却总是出现异常终止,修改了防火墙增加了双向长连接,也检查了海关一端的防火墙,都有1414双向的长连接,问题依旧反复出现,发送方通道在没有数据传输的情况下大约每6分钟就出现一次异常,然后20秒后重试恢复,如此循环。目前在传输队列上面配了触发器,first,还可以维持数据传输,但总是这样不断充实感觉还是不稳定的,业务量大的时候必然影响效率。请各位专家帮忙会诊,以下是有关日志:
2016/7/25 13:52:55 - Process(4316.3) User(MUSR_MQADMIN) Program(amqzmur0.exe)
Host(WIN-PD74LFQ1T74)
AMQ6287: WebSphere MQ 7.0.1.0。
说明:
WebSphere MQ 系统信息:
产品 :- WebSphere MQ for Windows
版本 :- 7.0.1.0
主机信息 :- Windows Ver 6.1 (3) Server Enterprise x64 Edition, Build
7600
操作:
无。
-------------------------------------------------------------------------------
2016/7/25 13:52:55 - Process(24240.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9002: 正在启动通道“CHExteGzEportSdcHp'。
说明:
正在启动通道“CHExteGzEportSdcHp'。
操作:
无。
-------------------------------------------------------------------------------
2016/7/25 13:53:15 - Process(24240.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9558: 远程通道“CHExteGzEportSdcHp”当前不可用。
说明:
通道程序已结束,因为在远程系统上无法启动通道“CHExteGzEportSdcHp”的某个实例。
这可能是下列其中一个原因造成的:
该通道被禁用。
远程系统资源不足,无法运行另一个通道实例。
如果是客户机连接通道,那么表示已达到为远程服务器连接通道配置的实例数的限制。
操作:
检查远程系统以确保该通道能够运行。重试此操作。
----- cmqxrfpt.c : 437 --------------------------------------------------------
2016/7/25 13:53:15 - Process(24240.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9999: 通道程序异常终止。
说明:
通道程序 'CHExteGzEportSdcHp' 异常终止。
操作:
查看出错文件中通道程序 'CHExteGzEportSdcHp' 以前的错误消息以确定故障的原因。
----- amqrccca.c : 921 --------------------------------------------------------
2016/7/25 13:53:55 - Process(24344.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9002: 正在启动通道“CHExteGzEportSdcHp'。
说明:
正在启动通道“CHExteGzEportSdcHp'。
操作:
无。
-------------------------------------------------------------------------------
2016/7/25 13:59:14 - Process(24344.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9208: 由主机 172.16.208.192(1414) 接收的错误。
说明:
从 172.16.208.192(1414) 通过TCP/IP接收数据时发生错误。其原因可能是通信故障。
操作:
TCP/IP recv()调用的返回码是10053 (X'2745')。记录这些值并通知系统管理员。
----- amqccita.c : 3434 -------------------------------------------------------
2016/7/25 13:59:14 - Process(24344.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9999: 通道程序异常终止。
说明:
通道程序 'CHExteGzEportSdcHp' 异常终止。
操作:
查看出错文件中通道程序 'CHExteGzEportSdcHp' 以前的错误消息以确定故障的原因。
----- amqrccca.c : 921 --------------------------------------------------------
2016/7/25 14:13:55 - Process(23952.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9002: 正在启动通道“CHExteGzEportSdcHp'。
说明:
正在启动通道“CHExteGzEportSdcHp'。
操作:
无。
-------------------------------------------------------------------------------
2016/7/25 14:19:14 - Process(23952.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9208: 由主机 172.16.208.192(1414) 接收的错误。
说明:
从 172.16.208.192(1414) 通过TCP/IP接收数据时发生错误。其原因可能是通信故障。
操作:
TCP/IP recv()调用的返回码是10053 (X'2745')。记录这些值并通知系统管理员。
----- amqccita.c : 3434 -------------------------------------------------------
2016/7/25 14:19:14 - Process(23952.1) User(MUSR_MQADMIN) Program(runmqchl.exe)
Host(WIN-PD74LFQ1T74)
AMQ9999: 通道程序异常终止。
说明:
通道程序 'CHExteGzEportSdcHp' 异常终止。
操作:
查看出错文件中通道程序 'CHExteGzEportSdcHp' 以前的错误消息以确定故障的原因。
服务器的一些默认设置或增强功能程序的优化设置对一些应用软件来说可能不适用,更有可能造成冲突,而在软件出现问题的情况下往往很难找到问题原因。
分享一个hp服务器上的案例:
初步确定是系统网络设置底层的原因,安装了HP Network Configuration Utility工具,可能对网络的一些设置同MQSeries有一些冲突。连接到服务器打开HP Network Configuration Utility。
选择其中一块网络适配卡,打开属性对话框。
第一感觉是Advanced Settings里面的一些设置不当。因此对上面属性中带IP或TCP的属性进行群举测试。最终取消选中TCP Offload Engine的Enabled Value多选框。MQSeries通道自动断开问题不再出现。
同过对话框,可以看到TCP Offload Engine的功能描述如下:
TCP Offload Engine (TOE) reduces the CPU cycles required to process network traffic by shifting processing to the adapter. TOE cannot be enabled on a port that has Jumbo Frames enabled.
收起目前的现象是双方并不是无法通信,海关发送到我这边的通道一直正常,我发送到海关的通道时断时续,但仍然是可以将消息发送到海关去的(传输队列上面配置了触发器,first),唯一的问题就是隔几分钟就会出现发送方通道异常终断,重新绑定,正在重试,然后就恢复正在运行状态了。
收起看一下你的网卡属性里面。tcp offload engine是否关闭?
收起1.正常情况下,发送通道是需要设置触发器的。
2.从错误来看是客户端异常终止。重连出现问题。
尝试:
queue = qManager.AccessQueue(QueueName, MQC.MQOO_OUTPUT + MQC.MQOO_FAIL_IF_QUIESCING);
或者参考客户端参考自动重连代码
http://www.ibm.com/support/knowledgecenter/SSFKSJ_7.1.0/com.ibm.mq.doc/cs70190_.htm
收起