设计消息流时,请考虑在输入节点上要连接哪些终端:
所有的输入节点都处理非事务性、非持久消息。内置输入节点使用以下方式处理与这些消息关联的故障和异常:
Real-timeInput 和 Real-timeOptimizedFlow 节点将在废弃消息之前重试一次;即,它们再次检索该消息并试图处理它。
如果在 catch 流中生成异常,则 HTTPInput 和 SCADAInput 节点将不会把消息传播到 failure 终端。节点会将错误记录在本地错误日志中并将该消息废弃。
在废弃消息的每种情况下,HTTPInput 节点都等待,直到超过了最长客户机等待时间节点属性指定的时间,并将错误返回到 Web service 客户机。
下表中概述了此操作:
错误事件 | 已连接 failure 终端 | 未连接 failure 终端 | 已连接 catch 终端 | 未连接 catch 终端 |
---|---|---|---|---|
节点检测到内部错误 | Fail 流处理错误 | 节点记录错误并废弃消息 | 不适用 | 不适用 |
当节点将消息传播到 out 终端时,out 流中出现异常 | 不适用 | 不适用 | Catch 流处理错误 | 节点记录错误并废弃消息 |
节点将消息传播到 catch 终端,catch 流中发生异常 | Fail 流处理错误(非 HTTPInput 或 SCADAInput) | 节点记录错误并废弃消息 | 不适用 | 不适用 |
节点将消息传播到 failure 终端,fail 流中发生异常 | 不适用 | 不适用 | 节点记录错误并废弃消息 | 节点记录错误并废弃消息 |