我已經爲一個步驟實現了spring批處理分區,其中一個主步將其工作委派給多個並行執行的slave線程。如下圖所示(參考文獻Spring docs) 現在如果我有多個要並行執行的步驟?如何在批處理配置中配置它們?我現在的配置是彈簧批量並行分割多個步驟?
<batch:job id="myJob" restartable="true" job-repository="jobRepository" >
<batch:listeners>
<batch:listener ref="myJoblistener"></batch:listener>
</batch:listeners>
<batch:step id="my-master-step">
<batch:partition step="my-step" partitioner="my-step-partitioner" handler="my-partitioner-handler">
</batch:partition>
</batch:step>
</batch:job>
<batch:step id="my-step" >
<batch:tasklet ref="myTasklet" transaction-manager="transactionManager" >
</batch:tasklet>
<batch:listeners>
<batch:listener ref="myStepListener"></batch:listener>
</batch:listeners>
</batch:step>
我的體系結構圖應該像下面的圖片:
我不知道,即使它可能使用彈簧batch.Any的想法或我的方式在我頭上來實現謝謝。
你好,看到這個帖子裏面概述瞭如何使用流和分流ELEM元素解決了這個問題。我正在嘗試與你完全一樣,但仍然堅持下去。 http://javaetmoi.com/2012/12/parallelisation-de-traitements-batchs-spring-batch – emeraldjava
這是我發現與這個主題相關的第二篇文章。 http://forum.spring.io/forum/spring-projects/batch/80527-defining-a-flow-inside-a-partitionstep – emeraldjava
我有一個類似的問題,請看看http://stackoverflow.com/questions/33121176/spring-batch-flowste-in-partitioner-restart-issue/33125360#33125360 – mremond