【问题标题】:How many threads are used in mule when moving across request-response inbound-endpoints?在跨请求响应入站端点移动时,mule 中使用了多少线程?
【发布时间】:2013-05-16 01:45:40
【问题描述】:

我试图了解 Mule 中使用的线程模型。 Mule 文档引用:

如果您使用同步处理,将使用相同的线程 将信息一路传递到骡子

因此,如果我在 HTTP 请求响应入站端点上收到一条消息,然后将其发送到另一个入站端点,例如使用请求响应的 vm 入站端点。这是使用 1 个线程还是使用 2 个线程? 1 个来自 HTTP 连接器池,1 个来自 VM 池?

例子:

<flow>

<http:inbound-endpoint exchange-pattern="request-response" address="xxx" />

<vm:outbound-endpoint exchange-pattern="request-response"address="vm://zzz" />
</flow>

<flow>
  <vm:inbound-endpoint exchange-pattern="request-response"address="vm://zzz" />

...
</flow>

【问题讨论】:

    标签: mule


    【解决方案1】:

    如果所有入站端点都使用请求-响应,则所有流都使用相同的线程。您可以在控制台输出中检查这一点。在您的情况下,您将获得类似的输出

    -- Flow1
    [[threadtest].connector.http.mule.default.receiver.02] org.mule.api.processor.LoggerMessageProcessor: /
    [[threadtest].connector.http.mule.default.receiver.02] org.mule.lifecycle.AbstractLifecycleManager: Initialising: 'connector.VM.mule.default.dispatcher.1269236931'. Object is: VMMessageDispatcher
    [[threadtest].connector.http.mule.default.receiver.02] org.mule.lifecycle.AbstractLifecycleManager: Starting: 'connector.VM.mule.default.dispatcher.1269236931'. Object is: VMMessageDispatcher
    -- Flow2
    [[threadtest].connector.http.mule.default.receiver.02] org.mule.api.processor.LoggerMessageProcessor: /
    

    其中[[threadtest].connector.http.mule.default.receiver.02] 是用于处理消息的线程的名称

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-09-21
      • 2012-11-29
      • 1970-01-01
      • 1970-01-01
      • 2013-06-12
      • 1970-01-01
      • 2014-08-15
      相关资源
      最近更新 更多