当前位置: 首页 > news >正文

青岛企业网站建设/微信广告

青岛企业网站建设,微信广告,免费一级a做愛网站,深圳市龙岗区建设工程交易中心背景描述 当springbatch任务处理缓慢时,就需要使用多线程并行处理任务。 参数throttle-limit用于控制当前任务能够使用的线程数的最大值。 调整throttle-limit为10时,处理线程只有8,再次增大throttle-limit值为20,处理线程依旧为…

背景描述

当springbatch任务处理缓慢时,就需要使用多线程并行处理任务。
参数throttle-limit用于控制当前任务能够使用的线程数的最大值。
调整throttle-limit为10时,处理线程只有8,再次增大throttle-limit值为20,处理线程依旧为8,并未生效。

问题原因

throttle-limit控制的是单个任务能够从线程池中获取的线程数的最大值,从这个值的注释说明可以看到,实际任务能够拿到的线程数量,不仅受throttle-limit参数控制,同时也受线程池的核心线程数配置影响。

原因很好理解,好比一个筐里只有十个苹果,就算规定可以拿20个苹果,其实也只能从筐子里拿到十个。
在这里插入图片描述

通过TaskExecutionAutoConfiguration中配置可以看到,任务处理的线程池通过properties配置实体进行线程数设置。
在这里插入图片描述

而properties中,核心线程数默认为8。即没有对线程池进行配置的情况下,一个任务到顶,撑死只能拿到8个线程。而throttle-limit默认配置为4,超过8时,则不会继续变大。
在这里插入图片描述

解决方案

当我们确实需要增加throttle-limit的值的时候,就必须先把线程池的线程数配置调大。
springbatch暴露了该配置项,支持任务处理线程池的调整。
在这里插入图片描述
配置项前缀为:spring.task.execution
线程池配置参数前缀:spring.task.execution.pool

即,在properties文件中,增加如下配置:

# 任务处理线程池线程数配置参数
### 核心线程数
spring.task.execution.pool.core-size=30
### 最大线程数
spring.task.execution.pool.max-size=30
### 等待队列容量
spring.task.execution.pool.queue-capacity=100

更多配置项,参考TaskExecutionProperties内容。

修改配置后,设置throttle-limit值为20,启动任务,可以看到并行处理的线程数达到了20个。

http://www.jmfq.cn/news/5339665.html

相关文章:

  • 泰州建设局网站安监站通报/杭州seo公司
  • 新疆住房和城乡建设部网站官网/2020十大网络热词
  • 网站建设皿金手指谷哥壹柒/山东百度推广代理
  • 网站建设及推广文案/seo最新教程
  • 拼团网站建设/南昌百度seo
  • 黑龙江省建设造价协会网站/品牌运营管理公司
  • 松江叶榭网站建设/百度广告投放代理商
  • 如何建设政府门户网站/最近的时事新闻
  • 网站建设 风险/网站接广告
  • 网站建设的平面设计/中国十大seo公司
  • 开发软件网站建设/足球比赛统计数据
  • 安岳建设局网站/seo要点
  • 开网站建设/微信搜索seo优化
  • 《高性能网站建设指南/成都网站制作维护
  • 上海网站建设 网页做/培训心得体会模板
  • 本地上海集团网站建设/外贸网
  • 网站后续建设/搜索历史记录
  • 大名网站建设电话/最新足球消息
  • 苏中建设网站/培训心得体会2000字
  • 上海网站建设解决方案/北京百度seo服务
  • 宁波营销型网站建设优化建站/滕州seo
  • 太阳能建设网站/优化服务内容
  • 全返网站建设/品牌推广内容
  • 建设监督网站/重庆官网seo分析
  • 网站建设制作周期/做一个网站要多少钱
  • 政府文化旅游节网站建设方案/友情链接软件
  • 珠江网站建设/个人博客网站
  • 建设银行衡阳市分行网站/中国十大门户网站排行
  • 展览中心网站建设/百度竞价广告收费标准
  • 茂名网站建设/河南关键词优化搜索