was突然不接收mq报文了?

我们系统与外系统通过MQ进行交互,本来接收报文正常,突然发现报文堆积在本地队列里,程序不再处理报文, 我们接收报文用的是spring的jms配置,was与mq配置在同一个AIX unix上, 再MQ的errors的日志里发现报AMQ9209这个错误, 然后我用endmqm -i和strmqm 来重启mq 发现还是堆积在队列里不接收, 无奈下,重启was,发现报文能成功处理掉, 实在不知从哪里下手, 谁能给解决下, 先感谢了!
was日志 mq日志 应用日志都没明显报错,而且应用突然不从mq取报文了 比如4台应用 会一个个的不接收mq中报文了 然后队列就堵了

1回答

swallowluoswallowluo  系统架构师 , 中国金融电子化公司
zhuhaiqiang努力呀赞同了此回答
建议在队列中有报文堆积的时候,从以下几个方面进行检查:1、在MQ资源管理器中查看队列中堆积的报文,检查报文的回退计数是否大于0,如果有大于0的情况,那么说明应用处理报文的时候,有回滚的情况,导致报文无法被处理;2、生成应用的JavaCore文件,检查MDB的线程运行情况,最好可以每隔20-...显示全部

建议在队列中有报文堆积的时候,从以下几个方面进行检查:
1、在MQ资源管理器中查看队列中堆积的报文,检查报文的回退计数是否大于0,如果有大于0的情况,那么说明应用处理报文的时候,有回滚的情况,导致报文无法被处理;
2、生成应用的JavaCore文件,检查MDB的线程运行情况,最好可以每隔20-30秒生成一次JavaCore,连续生成3个,以便进行对比;
3、检查到MQ侦听端口的连接数,查看是否达到最大连接数;同时查看MQ error日志,检查堆积时间点前后是否有错误。
4、查看WAS的日志中,是否有线程挂起的提示。

收起
 2020-09-27
浏览125
xujj 邀答

提问者

xujj软件开发工程师, 上海华腾

问题状态

  • 发布时间:2020-09-25
  • 关注会员:2 人
  • 问题浏览:659
  • 最近回答:2020-09-27