2014-09-18 110 views
1

enter image description here騾子VM隊列線程配置

我想了解如何使用3.5 CE

以微調騾子穿線型材初級流瑜伽

從FTP端點獲取文件,集中其一個VM隊列。

流量2

從上面的VM隊列支持事務讀取和做一些業務邏輯處理。


我假定流程2將在多個線程中基於所述VM連接器螺紋配置來執行。但是我注意到第二個流程總是隻使用4個線程來並行執行。已經嘗試配置默認的線程配置文件,它也沒有任何區別。請讓我知道我缺少什麼。任何幫助理解

樣品VM連接器配置

<vm:connector name="ITS_VM" validateConnections="true" > 
    <receiver-threading-profile maxThreadsIdle="30" maxBufferSize="5000" maxThreadsActive="40"/> 
    <dispatcher-threading-profile maxThreadsIdle="30" maxBufferSize="5000" maxThreadsActive="40"/> 
    <vm:queue-profile maxOutstandingMessages="500"> 
     </vm:queue-profile> 
    </vm:connector> 

樣品默認配置

<configuration > 
    <default-threading-profile maxThreadsIdle="30" maxBufferSize="5000" maxThreadsActive="40" /> 
    <default-dispatcher-threading-profile maxThreadsIdle="30" maxBufferSize="5000" maxThreadsActive="40"/> 
    <default-receiver-threading-profile maxThreadsIdle="30" maxBufferSize="5000" maxThreadsActive="40" /> 
     </configuration> 

***控制檯日誌*****

15:26:13,728 [FetchFiles_Flow.stage1.02] INFO Queued 1 file 
15:26:13,797 [ITS_VM.receiver.02] INFO ---------------------------Processing 1 file 
15:26:14,114 [FetchFiles_Flow.stage1.03] INFO Queued 1 file 
15:26:14,146 [ITS_VM.receiver.03] INFO ---------------------------Processing 1 file 
15:26:14,512 [FetchFiles_Flow.stage1.04] INFO Queued 1 file 
15:26:14,547 [ITS_VM.receiver.04] INFO--------------------------- Processing 1 file 
15:26:14,947 [FetchFiles_Flow.stage1.05] INFO Queued 1 file 
15:26:15,000 [ITS_VM.receiver.01] INFO--------------------------- Processing 1 file 
15:26:15,349 [FetchFiles_Flow.stage1.06] INFO Queued 1 file 
15:26:15,740 [FetchFiles_Flow.stage1.07] INFO Queued 1 file 
15:26:16,122 [FetchFiles_Flow.stage1.08] INFO Queued 1 file 
15:26:16,510 [FetchFiles_Flow.stage1.09] INFO Queued 1 file 
15:26:16,892 [FetchFiles_Flow.stage1.10] INFO Queued 1 file 
15:26:17,272 [FetchFiles_Flow.stage1.11] INFO Queued 1 file 
15:26:17,646 [FetchFiles_Flow.stage1.12] INFO Queued 1 file 
15:26:18,017 [FetchFiles_Flow.stage1.13] INFO Queued 1 file 

回答

4

在從Mule jars調試源代碼後,我發現我還需要設置輪詢VM隊列的使用者數量。

我通過將vm:connector上的numberOfConcurrentTransactedReceivers設置爲更高的數字來獲得此工作。默認值是4,這就是爲什麼我只看到4個並行線程。

現在工作正常。希望這將是

<vm:connector name="ITS_VM" validateConnections="true" createMultipleTransactedReceivers="true" numberOfConcurrentTransactedReceivers="30">

相關的職位可以在這裏找到 http://ricston.com/blog/mule-jms-consumers-max-threads-active/

+0

我只想表達[Mule文檔](https://docs.mulesoft.com/mule-user-guide/v/3.9/configuring-a-transport)在這方面有嚴重缺陷。 – Yuri 2018-02-21 09:28:43

0

在文檔this頁看看有用的人,在那裏你會發現:

Mule ESB應用程序是一組流的協作。 從概念上講,消息由流過三個階段處理:

  1. 通過入站連接器
  2. 正在處理該消息
  3. 該消息經由出站連接器發送被接收到的消息

然後:

在騾子調整表現涉及分析和改進這三個階段爲每個流程。您可以先對所有流程應用相同的調整方法 ,然後根據需要進一步自定義每個流程的調整。

您可以閱讀計算主題部分以瞭解如何理解您的需求。

問候。