2014-01-28 74 views
1

我正在寫一個由4個獨立步驟組成的Spring Batch作業,並希望將工作分佈到集羣的節點上。我正在考慮使用流程將作業分解成4個並行執行的作業。 4個作業中的每一個都將被配置爲作爲單個分區運行。它似乎可行(在集羣中未完全測試),但需要定義單獨的PartitionHandlers,請求和響應通道以及出站網關。Spring批處理分區 - 重用JMS通道?

這些實體中的任何一個可以跨分區步驟重用嗎?

其他建議的方法?

回答

0

進行並行處理,我將建議this doc

例:

<job id="parallelJobExample"> 
    <split id="parallelProcessingExample" task-executor="taskExecutor"> 
     <flow> 
      <step id="step1" parent="independetJob1"/> 
     </flow> 
     <flow> 
      <step id="step2" parent="independetJob2"/> 
     </flow> 
    </split> 
</job> 

<step id="independetJob1"> 
    <tasklet> 
     <chunk reader="parallelReader1" processor="parallelProcessor1" writer="parallelWriter1" commit-interval="1000"/> 
    </tasklet> 
</step> 

<step id="independetJob2"> 
    <tasklet> 
     <chunk reader="parallelReader2" processor="parallelProcessor2" writer="parallelWriter2" commit-interval="1000"/> 
    </tasklet> 
</step> 

如果你需要JMS例子,我也可以提供。