mule中流的并发执行

mule中流的并发执行,mule,Mule,我正在寻找一种模式,例如,可以同时调用2个不同的web服务,而不必等待它们在mule流中完成处理。另外,如果这两个服务调用中的任何一个失败,那么我希望继续,而不是失败 我看到mule中提供了fork和join模式。我的要求的不同之处在于,末尾没有连接,我也不想等待服务调用完成,因为我的服务调用本质上是异步的(例如调用service1将消息放入队列并调用单向service2) 下面有一个高级示例,其中我希望同时触发Service1和Service2调用。在启动这两个调用时,我希望控件返回到主流并开

我正在寻找一种模式,例如,可以同时调用2个不同的web服务,而不必等待它们在mule流中完成处理。另外,如果这两个服务调用中的任何一个失败,那么我希望继续,而不是失败

我看到mule中提供了fork和join模式。我的要求的不同之处在于,末尾没有连接,我也不想等待服务调用完成,因为我的服务调用本质上是异步的(例如调用service1将消息放入队列并调用单向service2)

下面有一个高级示例,其中我希望同时触发Service1和Service2调用。在启动这两个调用时,我希望控件返回到主流并开始执行,以此类推

<flow>
 <async><Service1 call></async>
 <async><Service2 call></async>
 <Transformer>
 <Logger>
</flow>


您所描述的行为正是流示例所要做的。标记内的服务调用将是异步的,并且流将继续与您的转换器一起运行,而无需等待服务调用完成。

我猜并发执行所有流是使用
分散-聚集

scatter-gather
内部,您可以使用异步块,以便在任何流失败时都不受影响。

该组件可从Mule 3.5中获得,以下是参考:-

您正在谈论的两个服务都是最后一个端点,还是这两个服务的结果/输出都是下一个处理所必需的?您当前的bigh级别流是您所期望的解决方案。你们在找别的东西吗?你们都是对的。我有一些疑问,但显然在标记中调用的流是纯异步的,它们既不继承触发流的处理策略也不继承触发流的异常策略,因此在我的原始问题中概述的流中的序列本身就是解决方案。谢谢大家!!