当前位置:
凯发k8官方网 >
前端技术
> javascript
>内容正文
javascript
springbatch 多线程(taskexecutor)启动job详解 (七) -凯发k8官方网
凯发k8官方网
收集整理的这篇文章主要介绍了
springbatch 多线程(taskexecutor)启动job详解 (七)
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
文章目录
- 一、springbatch配置多线程
- 二、springbatch多线程的tasklet配置
前言:使用单线程,单个进程作业可以解决许多批处理问题,如果我们想要job执行的速度更快,springbatch提供了对多线程的支持。只需要简单的配置,我们的job就可以使用多线程运行。
代码已上传github上面地址:https://github.com/fadehub/spring-boot-learn/tree/master/spring-boot-springbatch
springbatch其它文章直通车:
- springbatch读单个文件(flatfileitemreader)和写单个文件(flatfileitemwriter)(一)
- springbatch顺序读取多文件(multiresourceitemreader)和顺序写文件(multiresourceitemwriter)(二)
- springbatch读数据库(mybatispagingitemreader)(三)
- springbatch读文件(flatfileitemreader)写据库(mybatisbatchitemwriter)(四)
- springbatch 监听器之job监听器(jobexecutionlistener)和step监听器(stepexecutionlistener)(五)
- springbatch 监听器之chunk监听器(chunklistener)和skip监听器(skiplistener)(六)
一、springbatch配置多线程
配置多线程最简单的方法是,在step配置中添加一个taskexecutor
多线程step
@beanpublic step catthreadstep() {return stepbuilderfactory.get("catthreadstep")// .listener(catsteplistener).listener(catchunklistener).taskexecutor实现类
@beanpublic taskexecutor taskexecutor(){return new simpleasynctaskexecutor("spring_batch");}注意:上述配置的结果是step通过在单独的执行线程中读取,处理和写入每个块(每个提交间隔)来执行。作业的执行没有固定的顺序。
二、springbatch多线程的tasklet配置
多线程tasklet默认t配置为4,您可能需要增加tasklet以确保线程池充分利用。
在step中提供了对tasklet数量配置,关键字为:throttlelimit
我们在用springbatch多线程时候,一定要注意作业的执行没有固定的顺序。所以多线程用的时候一定要慎用。
总结
以上是凯发k8官方网为你收集整理的springbatch 多线程(taskexecutor)启动job详解 (七)的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: springbatch 监听器之job监
- 下一篇: springbatch 配置并行启动jo