我正在尝试在我的流程中创建一个故障安全场景。
我的流程如下所示。它涉及一些实习生调用网络服务的子流程。 在任何情况下,如果其中一个 Web 服务不可用,则会引发连接拒绝异常,并且整个处理会停止。
相反,我想要一个故障安全方案,其中即使当前出站调用失败,流程也应继续执行下一个子流程。
是否有任何消息处理器或流量控制处理器可以帮助在 Mule 中实现此行为。
下面给出的是我的抽象流程
<flow name="main_flow" >
....
....
<flow-ref name="subflow_1" />
....
....
<flow-ref name="subflow_2" />
....
....
<flow-ref name="subflow_3" />
....
....
</flow>
<sub-flow name="subflow_1">
....
....
<out-bound call to web-service />
....
....
</sub-flow>
<sub-flow name="subflow_2">
....
....
<out-bound call to web-service />
....
....
</sub-flow>
<sub-flow name="subflow_3">
....
....
<out-bound call to web-service />
....
....
</sub-flow>
最佳答案
您可以通过流程实现故障安全行为。
<flow name="main_flow" >
....
....
<flow-ref name="flow_1" />
....
....
<flow-ref name="flow_2" />
....
....
<flow-ref name="flow_3" />
....
....
</flow>
<flow name="flow_1" processingStrategy="synchronous" >
....
....
<out-bound call to web-service />
....
<catch-exception-strategy >
.... Your FailSafe code to recover. Also you will have the exception here.
</catch-exception-strategy>
</flow>
这样您就可以使用流程来实现故障安全行为。
快乐编码:)
关于java - 在流程中实现故障安全行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14653881/