Spring批量并行处理

时间:2014-10-08 12:40:31

标签: java spring cron spring-batch

当我使用spring batch admin运行长时间运行的批处理作业的多个实例时,它会在达到jobLauncher线程池任务执行程序池大小后阻止其他作业运行。但是,来自cron的多个工作似乎工作得很好。以下是作业启动器配置。

<bean id="jobLauncher" class="org.springframework.batch.core.launch.support.SimpleJobLauncher">
<property name="jobRepository" ref="jobRepository" />
    <property name="taskExecutor" ref="jobLauncherTaskExecutor" />
</bean>

<task:executor id="jobLauncherTaskExecutor" pool-size="6" rejection-policy="ABORT" />

Spring批量管理Restful API是否使用了xml config中指定的其他作业启动器?

1 个答案:

答案 0 :(得分:0)

我建议在spring框架中查看其他TaskExecutor选项。在最坏的情况下,您可以配置自己的ThreadPoolTaskExecutor以使用缓存的线程池,但如果您运行的并发作业数量很大或无限制,我会提醒您注意这一点。

此其他SO帖子提供了此类配置的示例。