Mule 流程参考和处理策略
有人能解释一下,当一个流使用flow ref调用另一个流时,Mule处理策略是如何工作的吗 案例1.Mule 流程参考和处理策略,mule,Mule,有人能解释一下,当一个流使用flow ref调用另一个流时,Mule处理策略是如何工作的吗 案例1. 假设我们有两个流:flowA和flowB,以及处理策略procA和procB,它们都是异步的,但是procA允许有10个线程,而procB只有1个线程 <queued-asynchronous-processing-strategy name="procA" maxThreads="10" doc:name="procA"/> <queued-asynchronous-proc
假设我们有两个流:flowA和flowB,以及处理策略procA和procB,它们都是异步的,但是procA允许有10个线程,而procB只有1个线程
<queued-asynchronous-processing-strategy name="procA" maxThreads="10" doc:name="procA"/>
<queued-asynchronous-processing-strategy name="procB" maxThreads="1" doc:name="procB"/>
flowA正在从队列中读取数据,并使用
<flow-ref name="flowB" doc:name="flowB"/>
在这种情况下,将在flowA和flowB之间创建另一个队列,以便在单个线程中逐个执行所有flowB调用?或者flowB将遵循flowA策略,可能同时处理10条消息 案例2. flowA是从队列读取的同步流。 它调用一个异步flowB,最多允许1个线程,如下所示:
<queued-asynchronous-processing-strategy name="procB" maxThreads="1" doc:name="procB"/>
<async doc:name="Async" processingStrategy="procC">
<flow-ref name="flowB" doc:name="flowB"/>
</async>
异步块有自己的策略procC,允许10个线程:
<queued-asynchronous-processing-strategy name="procC" maxThreads="10" doc:name="procC"/>
flowA是这样调用flowB的:
<queued-asynchronous-processing-strategy name="procB" maxThreads="1" doc:name="procB"/>
<async doc:name="Async" processingStrategy="procC">
<flow-ref name="flowB" doc:name="flowB"/>
</async>
问题是类似的:在这种情况下,将在异步块和flowB之间创建另一个队列,以便在单个线程中逐个执行所有flowB调用?
或者flowB将遵循procC策略,同时处理10条消息?案例1。 将为流B创建另一个具有1个线程的队列 VM接收器池线程->procA的SEDA线程->procB的SEDA线程 案例2. 如上所述,将为流B创建另一个具有1个线程的队列 VM接收器池线程->procC的SEDA线程->procB的SEDA线程 流程处理策略在本文中有所介绍,但我认为这并没有太大用处。在anypointstudio中设置这些流并使用记录器确定在特定时间运行的线程是很简单的