0

Mule で使用されているスレッド モデルを理解しようとしています。Mule ドキュメントの引用:

同期処理を使用している場合、同じスレッドを使用してメッセージが Mule を通過します。

したがって、HTTP 要求応答インバウンド エンドイントでメッセージを受信し、それを別のインバウンド エンドポイントに送信するとします。たとえば、要求応答を使用する vm インバウンド エンドポイントです。このスレッドは 1 つ使用されていますか、それとも 2 つ使用されていますか? HTTP コネクタ プールから 1 つ、VM プールから 1 つですか?

例:

<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>
4

1 に答える 1

0

すべてのインバウンド エンドポイントが要求と応答を使用する場合、すべてのフローで同じスレッドが使用されます。これはコンソール出力で確認できます。あなたの場合、次のような出力が得られます

-- 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]使用されるスレッドの名前

于 2013-05-14T12:37:54.573 に答える