什么是死消息?
当一个消息被返回或回收后, JMS 立即准备再次发送该消息,但是错误情况仍可能没有被消除,并且应用程序可能仍然不能处理该消息。这样的消息就被称为死消息( dead message ),仍然驻留在消息队列中。 解决方案A 如果指定的存活时间值 (JMSExpiration ) 小于或等于指定的发送时间值,则消息发送成功。否则,消息会悄然无声地终止。
解决方案B 我们可以用一个叫 QueueClearProcessor.java 的独立程序,由它使用 QueueBrowser API 来浏览队列中的旧消息,并每隔一段时间将其从队列中清除。可以通过消息创建时间来识别出旧消息。为了访问创建时间戳,JMS 在消息对象中提供了一个 API 方法: (getJMSTimestamp()) 解决方案 C MQSeries Message Browser 提供一个便利的图形化界面来查看和操作 MQ 队列中的消息。通过这个工具 MQSeries 管理员可以在任何消息队列管理器上显示消息内容,并可以对每个消息进行操作。
|
残留消息清除
最新推荐文章于 2022-11-24 22:35:55 发布
清除队列中的消息
2008年05月30日 星期五 17:32