Mulesoft批量处理多个连接器
我有3个Salesforce实例,我需要从中轮询数据,然后通过带水印的更改对这些数据进行操作。我试图以一种足够动态的方式来设计它,如果我需要添加另一个X数量的源,我不会重复所有批处理都具有的一组业务逻辑 下面是一个示例,说明我当前的流程在单个Salesforce组织中的情况 现在,我希望能够以某种方式在配置文件上为每个使用一个Mulesoft批量处理多个连接器,mule,mulesoft,mule-esb,Mule,Mulesoft,Mule Esb,我有3个Salesforce实例,我需要从中轮询数据,然后通过带水印的更改对这些数据进行操作。我试图以一种足够动态的方式来设计它,如果我需要添加另一个X数量的源,我不会重复所有批处理都具有的一组业务逻辑 下面是一个示例,说明我当前的流程在单个Salesforce组织中的情况 现在,我希望能够以某种方式在配置文件上为每个使用一个,允许我从.properties文件中提取登录凭据,轮询每个组织,然后适当地处理记录 是否有一种方法可以将其结构化为具有多个轮询/批处理,但使用不同的连接器 所有组织上的
,允许我从.properties
文件中提取登录凭据,轮询每个组织,然后适当地处理记录
是否有一种方法可以将其结构化为具有多个轮询/批处理,但使用不同的连接器
所有组织上的查询都是相同的,只是连接不同
我的.properties
文件如下所示:
sf.org1.user=email@domain.com
sf.org1.pass=![encrypted]
sf.org1.token=![encrypted]
sf.org2.user=email@domain.com
sf.org2.pass=![encrypted]
sf.org2.token=![encrypted]
我可以以动态方式执行此操作,还是需要为我添加的每个组织添加一个批处理过程?如果添加一个带有逗号分隔的组织列表的属性,则可以将其拆分为一个列表。使用
可以使用列表的每个元素参数化每个组织相同批次的执行
我将从批处理中进行轮询以触发流
示例属性:
organizations=org1,org2
流程和批次示例:
<flow name="pollFlow">
<poll doc:name="Poll" >
<fixed-frequency-scheduler frequency="10" timeUnit="SECONDS"/>
<logger message="Flow started" level="INFO" doc:name="Logger"/>
</poll>
<dw:transform-message doc:name="Transform Message">
<dw:input-payload mimeType="application/java" />
<dw:set-payload><![CDATA[%dw 1.0
%output application/java
---
p('organizations') splitBy ',' map {
user: p('sf.' ++ $ ++ '.user'),
pass: p('sf.' ++ $ ++ '.pass'),
token: p('sf.' ++ $ ++ '.token')
}
]]>
</dw:set-payload>
</dw:transform-message>
<logger message="list of orgs credential: #[payload]" level="INFO" doc:name="Logger"/>
<foreach doc:name="For Each">
<batch:execute name="so-dynamic-propertiesBatch" doc:name="Batch Execute" />
</foreach>
</flow>
<batch:job name="orgBatch">
<batch:input>
<logger message="on input phase #[payload]" level="INFO" doc:name="Logger" />
<!-- here do the request with credentials payload.user, payload.pass and payload.token -->
</batch:input>
<batch:process-records>
<batch:step name="Batch_Step1">
...
...
感谢您的回复!这是否仍然适用于水印?民意测验是否仍然可以访问上一次运行,以便我可以在记录请求中使用它?我不这么认为。我的示例是,它在轮询之外执行查询,因此它不会意识到水印。