死信队列是用于放置不能路由至正确目标的消息的队列。缺省情况下,当不能将消息传递至目标队列时,会将这些消息放入死信队列中。
IBM MQ 管理建议在每个队列管理器上创建要用作死信队列的本地队列,以便存储那些无法传递至其正确目标的消息,以供将来检索。
然而,使用死信队列可能会影响传递消息的顺序,所以您可以选择不使用这种队列。
队列管理器死信队列属性指定了找不到的队列。找到名称非常相似的队列,只有一个或多个字母的大小写不同,其余方面都相同。
如果接收到消息但不能传递,并且未找到任何死信队列,那么该通道会停止,并且此消息保留在传输队列上。
死信队列属性值中可能有错误,或想要的死信队列可能被错误命名。
队列管理器死信队列属性指定了不存在的队列。 如果接收到消息但不能传递,并且未找到任何死信队列,那么该通道会停止,并且此消息保留在传输队列上。
死信队列属性值中可能有错误,或想要的死信队列可能被错误命名。
队列管理器死信队列属性指定了非本地队列。如果接收到消息但不能传递,且找不到死信队列,那么通道停止并且消息仍停留在传输队列中。
死信队列属性值中可能有错误, 或您需要将想要的死信队列重新创建为本地队列。
当启动 IBM MQ 死信队列处理程序时,它能根据已配置的一组规则对到达死信队列的消息自动执行操作。要了解更多信息,请参阅 IBM MQ 信息中心。
无法检测到正在运行的死信队列处理程序;这可能是因为处理程序不存在,也可能是由于该处理程序当前没有运行。
如果消息对于死信队列太大,那么通道停止并且消息仍停留在传输队列中。死信队列必须具有足够大的空间,以便容纳队列管理器可能必须处理的最大消息,其中包含死信标题所需的空间。
死信队列中存在消息表明 IBM MQ 环境存在一些问题,必须进一步调查。
如果接收到消息但不能传递,且死信队列已满,那么通道停止并且消息仍停留在传输队列中。处理死信队列中的消息,或增加队列的最大深度以容纳更多的消息。
死信队列中存在消息表明 IBM MQ 环境存在一些问题,必须进一步调查。
队列管理器死信队列属性指定了未启用放入的队列,因此无法在队列上放入消息。如果接收到消息但不能传递,且不能使用死信队列,那么通道停止并且消息仍停留在传输队列中。
确保该队列已启用放入,或选择备用队列作为死信队列。