关于WebSphere MQ异常:MQ 队列管理器立即关闭通道,关闭原因2009
请教各位大虾:
客户端连接到队列管理器所在的服务器进行消息接收时,如果长时间该队列中一直没有消息可以取,但是客户接收程序还继续运行,过一段时间MQ就会报如下异常:
com.ibm.mqservices.MQInternalException: MQJE001:发生 MQException:完成码 2,原因码 2009
MQJE016:连接期间,MQ 队列管理器立即关闭通道
关闭原因 = 2009
导致队列管理器的消息通道关闭,发送方无法再放置消息,除非将导致该通道关闭异常的客户端接收接收程序关闭,这样队列管理器就恢复正常了,但是我还不想让接收程序关闭,不知道怎样避免这种情况的发生,有什么解决方案?导致这种情况的原因是什么?
我的队列管理器是建在UNIX环境下,只定义了一个消息通道类型为SVRCONN:
DEFINE CHANNEL(S_QM_APSIS_TEST) CHLTYPE(SVRCONN) MAXMSGL(104857600) REPLACE
采用的通讯方式为将消息放置到Server端的本地队列中,客户端从到该Server端的本地队列中取得消息;当客户端需要返回消息给服务器端时,客户端发往服务器端的队列,不知道我的这个通道就是属于MQI通道类型?我看网上好多资料都是建立多个通道:发送方,接收方和服务器端通道,不知道这种通道什么情况下使用,对通道的类型及每种类型什么情况下使用不是很清楚,还望大家多多帮忙指教,谢谢!!:)