我正在编写一个Spring Batch作业,它由4个独立的步骤组成,并希望通过集群的节点分配工作。我正在考虑使用流程将作业分成4个并行执行的作业。 4个作业中的每一个都将配置为作为单个分区运行。它似乎工作(未在集群中完全测试)但需要定义单独的PartitionHandler,请求和响应通道以及出站网关。
可以跨分区步骤重复使用这些实体吗?
任何其他建议的方法?
答案 0 :(得分: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示例,我也可以提供。