调查未使用点到点消息的原因

可执行一组检查以调查服务集成总线上的目标未使用点到点消息的原因。

开始之前

在开始调查之前,执行下列初步检查:
  • 在开始调查之前,执行下列初步检查:
  • 检查消费应用程序是否在正确地使用消息:
    • 检查应用程序是否已启动。
    • 检查所使用目标的名称是否正确。
  • 检查生产应用程序以了解它是否为消息给定了较短的到期时间。如果是这种情况,那么在可以使用消息之前消息可能就已到期。
  • 单击 服务集成 -> 总线 -> bus_name -> [目标资源] 目标 以显示相关总线上的目标。单击目标,并确保已选中允许接收复选框。
  • 检查消息的可靠性。如果可靠性设置为“最大努力”,那么在正常操作期间系统可以废弃消息。 请参阅了解为何废弃最大努力非持久消息以获取可能原因的列表。
  • 检查错误日志。

关于此任务

如果您在应用程序中未获得响应,原因是您期望获得的消息未出现在队列上,请执行以下检查。本主题中的信息适用于本地生产者和远程生产者,也适用于本地使用者和远程使用者。

过程

  1. 运行消费应用程序并检查是否仍然未使用消息。
  2. 停止消费应用程序。
  3. 确定哪个消息传递引擎正在存放消息生成所在的队列点。请参阅确定服务集成总线上目标的消息点位置
  4. 单击服务器 -> 服务器类型 -> WebSphere 应用程序服务器 -> server_name -> [服务器消息传递] 消息传递引擎 -> engine_name -> [消息点] 队列点 > queue_point_identifier > [“运行时”选项卡] 消息以查看队列点上的消息。检查是否存在处于“未锁定”状态的消息。
    • 如果不存在任何消息,那么没有任何消息可供使用。运行生产应用程序以生成测试消息,然后再次检查队列。如果仍然不存在任何消息,那么说明测试消息尚未到达。使用调查点到点消息未到达的原因主题来调查该问题。
    • 如果虽然有消息存在,但是它们不是处于“未锁定”状态,那么检查从此队列点使用消息的其他使用者。如果存在其他使用者,那么应停止它们,然后再重复此调查过程。
  5. 确定消费应用程序连接至哪个消息传递引擎。请参阅确定应用程序与哪个消息传递引擎相连
    • 如果消费应用程序连接至用来存放队列点的消息传递引擎,那么检查消费应用程序是否存在错误,尤其是要检查消费应用程序中的选择器是否与提供的消息相匹配。
    • 如果消费应用程序所连接的消息传递引擎不是用来存放队列点的消息传递引擎,那么会通过远程消息点来传递消息。显示与消费应用程序相连的消息传递引擎的运行时属性,然后显示该消息传递引擎的远程消息点并查看相关消息点上的消息请求的列表。

      如果可能,请启动消费应用程序并确保它主动尝试使用消息(应用程序应该处于“接收并等待”状态或者“已注册异步使用者”状态),然后遵循调查在应用程序正在运行的情况下未通过远程消息点或预订点来使用消息的原因中的指示信息。如果应用程序在相当长的时间内(有足够长的时间来调查问题)不能保持处于“主动使用消息”状态,那么遵循调查在应用程序已停止的情况下未通过远程消息点或预订点来使用消息的原因中的各个步骤。

指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tju_pt2pt_not_consumed
文件名:tju_pt2pt_not_consumed.html