java - Spring批量并行处理

标签 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 Batch admin Restful API 是否使用了 xml 配置中指定的不同作业启动器?

最佳答案

我建议看看另一个 TaskExecutor spring 框架中的选项。在最坏的情况下,您可以配置自己的 ThreadPoolTask​​Executor 来使用缓存的线程池,但如果您可能运行的并发作业数量很大或不受限制,我会警告您不要这样做。

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

关于java - Spring批量并行处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26257148/

相关文章:

java - 在java中保持地址空间相同

java - 保护所有 URL 安全约束在 App Engine 标准 java 中不起作用

linux - 使用 Cron 重启

linux - crontab 不执行他的工作

java - Spring AMQP java客户端和RabbitMQ集群节点之间的负载平衡连接?

php - 服务器上的 Cron 作业设置和自动执行

java赋值正则表达式

java - 如何在 Eclipse 中使用更多参数格式化方法?

java - 无法从标准 JAR 文件中读取 TLD "META-INF/c.tld"

java - 列出java项目中resources目录下的所有文件