业务背景: 读取本地大文件,或者读取ES的文件 进行业务处理 将结果存入ES
BlukUtil工具
import com.zrt.govername.waimai.BlukTask; import org.apache.log4j.Logger; import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.concurrent.*; /** * @Classname BlukUtil * @Description 批量多线程提交数据工具 * @Date 2020/5/8 10:38 * @Created by wsl */ public class BlukUtil { private static final Logger logs = Logger.getLogger(BlukUtil.class); private int bulkSize;//批量提交数量 private int nThreads;//任务线程数 private String indexName;//任务线程数 private ExecutorService threadPool; private CompletionService<String> completionService; private int taskNum=0;//任务计数器 public BlukUtil(int bulkSize, int nThreads, String indexName) {//构造方法 确定 this.bulkSize = bulkSize; this.nThreads = nThreads; this.indexName = indexName; initPool(); } public void initPool(){ threadPool = Exe