我需要对VM使用情况做一些澄清。
我在Mule ESB中有大量流量,我在某些流程中使用VM Inbounds。
让我们说:我有3个以VM(入站)为起点的流程。
但我应该用VM(出站)多次调用此流程。对于每次交易,我打电话近20次。
同样,我没有多个VM入站端点(名称不同),只有3个VM(入站),只有多个这三个VM被调用。它会影响性能??? 。下面给出的1流程示例
<flow name="Audit" doc:name="Audit">
<vm:inbound-endpoint exchange-pattern="one-way" path="${vm.audit}" doc:name="Audit" connector-ref="MAIN_VM"/>
<object-to-string-transformer doc:name="Object to String"/>
<set-variable doc:name="Variable" value="#[payload]" variableName="capturePayload"/>
<data-mapper:transform config-ref="Construct_Logger_XML" input-ref="#[flowVars["capturePayload"]]" doc:name="DataMapper">
<data-mapper:input-arguments>
...
</data-mapper:input-arguments>
</data-mapper:transform>
<byte-array-to-string-transformer doc:name="Byte Array to String"/>
<logger level="INFO" doc:name="CaptureAuditLogs" message="AuditInfo:#[function:dateStamp], AuditLogPayload: #[payload]" category="AuditInfo">-
</flow>
希望,问题是可以理解的。寻找你的想法。 骡子版本:3.5.1 提前致谢。
答案 0 :(得分:2)
在社区版本上,VM端点只是一个内存中的队列,它们非常快。
如果空穴传输机制被激活,调用VM端点将比flow-ref略慢。
如果从流中调用流,并且您没有使用mule EE,则应该更喜欢flow-ref over vm outbound,因为flow-ref将忽略入站端点并直接进入处理器。