调查点到点消息未到达的原因

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

开始之前

在开始调查之前,执行下列初步检查:
  • 检查生产应用程序是否在正确地生成消息:
    • 确认应用程序中没有任何故障。
    • 检查目标的名称是否正确。
    • 检查是否落实了用来生成消息的事务而且没有产生任何异常。
    • 检查应用程序是否允许足够时间以供交付信息;消息在消息传递引擎之间异步传输,因此如果消息是通过远程消息点来传递,那么在交付之前可能会略微有延迟。延迟的时间长度取决于系统容量和加载等因素。
  • 检查生产应用程序以了解它是否为消息给定了较短的到期时间。如果是这种情况,那么在消息到达之前,或者在接收消息传递引擎能够处理这些消息之前,这些消息可能已经到期。
  • 检查相关异常目标,以了解该目标中是否存在消息。如果确实存在消息,那么使用这些消息所包含的信息来了解它们到达该异常目标的原因,并编写一个应用程序(或调解)来处理这些消息。
  • 检查消息的可靠性。如果可靠性设置为“最大努力”,那么在正常操作期间系统可以废弃消息。 请参阅了解为何废弃最大努力非持久消息以获取可能原因的列表。
  • 检查消息的优先级。如果优先级为低,那么更高的优先级工作可能延迟消息。
  • 检查系统环境,例如,CPU 忙碌可能导致消息延迟。
  • 检查错误日志以了解发生的异常。

关于此任务

如果您的应用程序在服务集成系统中生成点到点消息,并且消息未到达其目标,请通过完成以下步骤来调查问题:

过程

  1. 单击服务集成 -> 总线 -> bus_name -> [目标资源] 目标以显示相关总线上的目标。单击目标,并确保已选中允许发送复选框。
  2. 停止使用应用程序。取消选中目标的允许接收复选框,然后将更改保存到主存储库中。如果未启用动态配置,请重新启动消息传递引擎以使更改生效。 这将防止任何使用者使用您将用于调查问题的测试消息。
  3. 运行生产应用程序,以生成可靠性级别高于“最大努力”的测试消息(最大努力消息可能在正常操作期间被废弃,因此对于调查此问题没有作用)。以下步骤描述如何调查测试消息所发生的情况。
  4. 确定哪个消息传递引擎托管发送消息的目标的队列点,请参阅确定服务集成总线上目标的消息点位置
  5. 单击服务集成 -> 总线 -> bus_name -> [拓扑] 消息传递引擎,然后检查消息传递引擎是否正在运行。
  6. 从“消息传递引擎”面板中,单击 [消息点] 队列点 ->queue_point_name [运行时选项卡] 消息以查看队列点上的消息。如果显示消息,那么消息已成功到达消息传递引擎,并且问题已消失。
  7. 确定生产应用程序所连接到的消息传递引擎,请参阅确定应用程序与哪个消息传递引擎相连
  8. 如果生产应用程序所连接的消息传递引擎不是用来托管队列点的消息传递引擎,那么会通过远程消息点来传递消息。请参阅调查通过远程消息点来传递消息时点到点消息未到达的原因来调查这种情况。

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



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