管理失败的 SCA 事件
在处理“服务组件体系结构”(SCA) 请求时发生问题或响应消息在“恢复”子系统中创建失败的 SCA 事件时,必须决定如何管理此事件。 使用本主题中的信息帮助您标识和修订错误,以及从“恢复”子系统清除事件。
关于此任务
“服务组件体系结构”(SCA) 事件是服务应用程序收到的请求或响应。它可能来自于外部源,例如,入站应用程序适配器,或者 Web Service 的外部调用。事件由要操作的业务逻辑的引用及其数据(存储在“服务数据对象”中)组成。在收到事件时,将由相应的应用程序业务逻辑进行处理。
单个异常的线程可能分叉为多个分支。
单独分支通过此同一会话链接至主调用事件。如果由于系统故障、组件故障或组件不可用而无法运行分支中的业务逻辑,那么会创建失败事件。如果多个分支失败,那么将针对每个分支创建失败事件。“恢复”服务处理以下类型的失败的 SCA 事件:
- 在 SCA 操作的异步调用期间发生的事件故障
- 运行时异常导致的事件故障,例如,在业务逻辑使用的方法中未声明的任何异常
“恢复”服务将失败的 SCA 异步交互发送至已在部署环境总线上创建的失败事件目标。失败事件的数据将存储在失败事件数据库中(缺省情况下,WPCRSDB)。可以在 Failed Event Manager 中查找数据。
失败的 SCA 事件通常具有与其相关的源和目标信息。源和目标基于故障点(调用失败的位置),而无论交互类型。考虑以下示例,其中组件 A 正在异步调用组件 B。请求消息从 A 发送至 B,并且从 B 至 A 返回响应回调消息。
- 如果在初始请求期间发生异常,组件 A 是源,组件 B 是 Failed Event Manager 的目标。
- 如果在响应期间发生异常,组件 B 是源,而组件 A 是 Failed Event Manager 的目标。
由于未将运行时异常声明为接口的一部分,因此组件开发人员应尝试解决异常,并防止不经意将运行时异常传播至客户机(如果客户机是用户接口)。
要管理失败的 SCA 事件,请执行以下步骤。