当需要处理数据量太多,此时可以分批处理,代码如下: ...
最近由于业务需要,数据量比较大,需要使用多线程来分批处理,提高处理效率和能力,于是就写了一个通用的多线程处理工具,只需要实现自己的业务逻辑就可以正常使用,现在记录一下 主要是针对大数据量list,将list划分多个线程处理 ResultBean类:返回结果统一bean View Code ITask接口: 实现自己的业务 View Code HandleCallable类:实现Callable接口 ...
2018-08-09 20:55 2 8889 推荐指数:
当需要处理数据量太多,此时可以分批处理,代码如下: ...
一、场景 在开发excel处理数据时,因为数据库的卡顿,一次插入2000条数据速度可能需要1min左右,所以考虑使用线程池;每200个分组,有n组,就开(n+1)个线程去分批同时处理这些数据。 二、依赖 1. pom.xml 2. excel的表格只有一个字 ...
/** * Mongo中要处理的数据量比较多时,可以进行分批量处理 * 使用MongoTemplate分批进行处理数据 * skip(num).limit(10000) 跳过num条数据后,取10000条数据 */ public static void main(String[] args ...
任务类: 测试类: ...
Semaphore-信号灯机制 当我们创建一个可扩展大小的线程池,并且需要在线程池内同时让有限数目的线程并发运行时,就需要用到Semaphore(信号灯机制),Semaphore 通常用于限制可以访问某些资源(物理或逻辑的)的线程数目,它是一个计数信号量,从概念上讲,信号量维护了一个许可集合 ...
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-collections4 --> ...
前言: 前几天有运营部门人员反应派发红包很慢,经常出现504或者无响应,于是由我这边进行一个优化后,发放速度由原来的超时或者1分钟变为几秒。 发放流程: 活动后台导入一个xls表格,大概2W左右条,经过后台的筛选处理等逻辑后会循环调用插入数据库的代码。 优化过程 ...
一,Fork-Join 1,定义: Fork-Join框架:就是在必要的情况下,将一个大任务,进行拆分(fork)成若干个小任务(拆到不能再拆时),再将一个个的小任务运算的结果进行join汇总。 ...