如何在mulesoft中调用多个休息服务

时间:2018-03-28 05:33:34

标签: mule esb mule-studio mule-component

我需要调用多个休息服务。

目前我只调用一个休息服务,因为文件很大,我们已经分成了几个部分(例如1到10k,10k到20k,20k到30k ......等等)

流程旨在读取整个文件,现在已经拆分了。

流程是这样的:

HTTP请求者(WS调用)---- businesslogic。

我想调用多个服务(1到10k,10k到20k,20k到30k ......等等)并使用相同的通用业务逻辑流程。

如何配置?

2 个答案:

答案 0 :(得分:1)

如果您需要按顺序为每个记录调用rest api,则可以在批处理步骤中执行此操作。

如果您需要在没有任何序列的情况下进行休息api呼叫,那么您可以在批处理中使用分散聚集。

可以通过配置批量大小来设置并行处理的记录数。

参考文献:https://docs.mulesoft.com/mule-user-guide/v/3.6/scatter-gather https://dzone.com/articles/part-1-mule-batch-processing-introduction

答案 1 :(得分:0)

M子通过使用scatter-gather组件允许此操作。请注意此用例中的异常处理。如果一条或多条路由失败,则需要对此进行控制。

<scatter-gather timeout="6000">
    <!-- custom-aggregation-strategy class="implement and place your class here if you need a custom strategy"/-->    
    <http:request config-ref="requestConfig1" path="/path1" method="POST" doc:name="HTTP"/>
    <http:request config-ref="requestConfig2" path="/path2" method="POST" doc:name="HTTP"/>
    <http:request config-ref="requestConfig3" path="/path3" method="POST" doc:name="HTTP"/>
</scatter-gather>