【问题标题】:Invoking VM inbound endpoints multiple times in Mule flow ,will it impact performance? Mule ESB在 Mule 流中多次调用 VM 入站端点,会影响性能吗?骡 ESB
【发布时间】:2015-01-28 09:47:19
【问题描述】:

我需要一些关于 VM 使用的说明。

我在 Mule ESB 中有大量流,我在某些流中使用 VM Inbounds。

假设:我总共有 3 个以 VM(入站)为起点的流。

但我应该使用 VM(出站)多次调用此流。对于每笔交易,我都会调用近 20 次。

再次,我没有多个 VM 入站端点(具有不同的名称),只有 3 个 VM(入站),只有这 3 个 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[&quot;capturePayload&quot;]]" 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 提前致谢。

【问题讨论】:

    标签: mule mule-studio mule-el mule-component


    【解决方案1】:

    在社区版中,VM 端点只不过是一个内存队列,它们非常快。

    鉴于空穴传输机制已触发,调用 VM 端点将比 flow-ref 稍慢。

    如果您从流中调用流,并且您没有使用 mule EE,则您可能应该更喜欢 flow-ref 而不是 vm outbound,因为 flow-ref 将忽略入站端点并直接进入处理器。

    【讨论】:

    • 我只使用 EE。更多关于我为审计和记录目的而调用的流程(不使用 Logger 和 Log4j)。因此,无论我需要调用审计流或 Logger 流,我都使用带有内部 VM 的 Async 范围来调用后续流(VM 入站)。是不是很好。不会影响性能 r8?
    • 应该没有问题。但是,您可能对 async plus 和 enpoint 做了过度杀伤,您可以只使用单向 vm 端点。
    • 感谢您的帮助。太好了。我担心这可能会影响性能。在正确的时间提供良好的帮助。我将继续以同样的方式前进..
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-28
    • 1970-01-01
    • 1970-01-01
    • 2018-04-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多