mule:批处理与For-each

时间:2017-12-12 19:22:12

标签: mule

我有一个场景,我有一个ID列表,每个ID从多个API获取数据并聚合它们(这是加载阶段),然后将其写入DB。我知道我们可以使用批处理来写入db,但是加载阶段呢?

3 个答案:

答案 0 :(得分:1)

您应该可以使用 foreach 范围。

您的有效负载列表会在到达 foreach 之前显示在您的有效负载中。您可以将HTTP组件设置为请求 - 响应,这样就可以在到达数据库组件之前获取所需的所有数据以保存数据。

答案 1 :(得分:0)

从多个API获取数据需要花费时间,并且必须保留在批处理步骤中。对于每条记录,在获取数据后,将其移动到VM队列。在完成阶段,使用mule请求者从vm队列中获取详细信息并在db中插入。在db中插入只需一步,不需要批处理

答案 2 :(得分:0)

您可以为每个ID使用scatter-gather,并从多个api中获取数据。 Scatter-Gather同时向多个目标发送请求消息。基于响应,您可以实现响应的聚合策略。

同样可以使用mule批次来完成。

参考文献:https://docs.mulesoft.com/mule-user-guide/v/3.9/scatter-gather