MQ报2009之后阻塞在send上

图片说明

程序(见图片)单线程不断的向MQ队列中发送消息,2017年每天发送小于1万条消息,没问题。现在每天发送5万条,差不多一个星期就会挂掉一次。
报错前第几条消息在79行send消息后,86行会抛出异常,报错码2009.
最后一条消息就堵塞在79行上,等待很久都没释放。

队列管理器运行正常。

详细报错:
图片说明
图片说明

MQ2009出现原因:网络断连 、确认网络状况良好、MQ服务端连接超时 、MQ服务端和客户端程序会定时发送心跳通知(默认5秒),如果MQ服务端无法及时收到心跳通知,就会断开与客户端程序的连接,也会导致MQ2009错误。
解决方法:修改MQ通道数、增大MQ最大连接通道个数和最大活跃连接通道个数。然后重启试试