从另一个骡子流监视骡子过程

时间:2014-06-20 12:58:48

标签: mule mule-studio

我有一个读取文件并将其上传到数据库的进程。流程如下。

  1. 文件连接器
  2. for-each循环内的处理(更新到数据库)
  3. 上述方法的问题在于,在发生异常的任何时候,处理在该记录处停止,并且不处理其余记录。作为一种解决方法,我已经改变了流程如下:

    1. 文件连接器
    2. 对于每一个 - 在for-each中,一个flow-ref用于调用一个单独的流来进行处理。
    3. 我注意到的是,在调用新流时,使用单独的线程进行处理,因此异常不会导致所有记录失败。现在我面临另一个困难,即在处理完成后,我需要发布一份包含完整处理细节的报告(没有处理,拒绝记录等)。由于所有记录都是在不同的线程中异步处理的,因此我无法确定处理何时完成。有没有办法监控处理是否从另一个骡子流完成,以便我可以在完成时生成报告?

1 个答案:

答案 0 :(得分:0)

  

在调用新流时,单独的线程用于处理

flow-ref并不一定意味着新线程:您可以调整引用流的processing-strategy以强制进行同步处理。

通过这种方式,您将能够保持同步,在引用的流程中具有自定义表达式策略,并实现在发生错误时不破坏处理的目标。