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

南宁市有哪些做网站的外包企业东莞桂城网站建设

南宁市有哪些做网站的外包企业,东莞桂城网站建设,策划书网页设计方案,wordpress 后台破解前言 哲学提问镇贴#xff1a; 不了解异步怎么使用的看官#xff0c; 可阅#xff1a; SpringBoot 最简单的使用异步线程案例 Async_小目标青年的博客-CSDN博客 Springboot Async异步扩展使用 结合 CompletableFuture_小目标青年的博客-CSDN博客 想了解更多关于批量list处…  前言 哲学提问镇贴 不了解异步怎么使用的看官 可阅 SpringBoot 最简单的使用异步线程案例 Async_小目标青年的博客-CSDN博客 Springboot Async异步扩展使用 结合 CompletableFuture_小目标青年的博客-CSDN博客 想了解更多关于批量list处理操作的看官可阅   Java List数据量大 需要分片批次操作_小目标青年的博客-CSDN博客 Mybatis 批量插入 采用分批处理一次500条_小目标青年的博客-CSDN博客 Springboot 手动分页查询分批批量插入数据_小目标青年的博客-CSDN博客 正文 话不多说本篇核心介绍的是日常毕竟常遇到的一些处理点。 首先list数据量大需要切割操作 //模拟拿到的数据量大的listListProduct products getBatchListTest();//直接用Lists.partition 按照100条一次切割ListListProduct allList Lists.partition(products, 100);//循环分批处理切割的listfor (ListProduct batchProducts :allList){productService.batchDealList(batchProducts);} 但是往往有时候 数据量是真大切割完循环处理 还嫌慢 。 是的因为循环处理是串行的 也就是比如500条数据的list切割成5个 batchList。 如果每次处理一个barchList要1秒钟那么循环串行处理5次就是 1X55 秒。 所以我们分批切割这样串行处理完觉得慢 如果业务场景合适我们可以试着改 并行 处理。 开袋及食   ① 配置一个线程池交给spring管理的 线程池用起来才放心、安心 ThreadConfig.java  import java.util.concurrent.Executor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;Configuration EnableAsync public class ThreadConfig {/*** 执行需要依赖线程池这里就来配置一个线程池* return*/// 当池子大小小于corePoolSize就新建线程并处理请求// 当池子大小等于corePoolSize把请求放入workQueue(QueueCapacity)中池子里的空闲线程就去workQueue中取任务并处理// 当workQueue放不下任务时就新建线程入池并处理请求如果池子大小撑到了maximumPoolSize就用RejectedExecutionHandler来做拒绝处理// 当池子的线程数大于corePoolSize时多余的线程会等待keepAliveTime长时间如果无请求可处理就自行销毁Bean(MyExecutor)public Executor getExecutor() {ThreadPoolTaskExecutor executor new ThreadPoolTaskExecutor();//设置核心线程数executor.setCorePoolSize(10);//设置最大线程数executor.setMaxPoolSize(100);//线程池所使用的缓冲队列executor.setQueueCapacity(250);//设置线程名executor.setThreadNamePrefix(JcTest-Async);//设置多余线程等待的时间单位秒//executor.setKeepAliveSeconds();// 初始化线程executor.initialize();return executor;} } 看看我们并行的写法   AutowiredThreadConfig threadConfig;PostMapping(doBatchParallelTes)public void doBatchParallelTes() {ListProduct products getBatchListTest();ListListProduct allList Lists.partition(products, 100);int batchNum allList.size();StopWatch stopWatch new StopWatch();stopWatch.start();Executor threadConfigExecutor threadConfig.getExecutor();ListCompletableFuture results new ArrayList();for (ListProduct batchProducts :allList){CompletableFutureString future CompletableFuture.supplyAsync(() - {productService.batchDealList(batchProducts);return ;}, threadConfigExecutor);results.add(future);}CompletableFuture.allOf(results.toArray(results.toArray(new CompletableFuture[batchNum]))).join();stopWatch.stop();System.out.println(总用时stopWatch.getTotalTimeMillis()毫秒);}代码简析 并行图解 看看执行效果 那么看到这里大家一定注意到了那个 ‘合流’ 是不是每个业务都需要这样所谓的‘合流’ 当然不是如果说这批list处理完完事了不需要考虑回到主线程去做其余操作那么我们就不需要‘合流’操作。 不需要合流主线程走主线程逻辑子线程自己玩自己的 PostMapping(doBatchTestNew2)public void doBatchTestNew2() {ListProduct products getBatchListTest();ListListProduct allList Lists.partition(products, 100);StopWatch stopWatch new StopWatch();stopWatch.start();Executor threadConfigExecutor threadConfig.getExecutor();for (ListProduct batchProducts :allList){CompletableFuture.runAsync(() - {productService.batchDealList(batchProducts);}, threadConfigExecutor);}stopWatch.stop();System.out.println(总用时stopWatch.getTotalTimeMillis()毫秒);} 效果其实就是异步执行  那如果说是基于Async 的方式去实现呢当然也是可以的示例 基于Async 就不多说了这个在文章开头有介绍相关文章之前写的介绍过玩法就是这两篇: SpringBoot 最简单的使用异步线程案例 Async_小目标青年的博客-CSDN博客 Springboot Async异步扩展使用 结合 CompletableFuture_小目标青年的博客-CSDN博客 好了该篇就到这。
http://www.w-s-a.com/news/153634/

相关文章:

  • 网站建设硬件和软件技术环境配置签约做网站模板
  • 教育网站建设的素材手机app制作流程
  • 免费行情软件网站大全下载网站备案查询
  • flex网站模板wordpress实时预览
  • 建设银行网站模板为什么企业要建设自己的企业文化
  • 网站建设必知免费手机网站建站系统
  • ssh可以做wap网站么嘉兴seo排名
  • 站内优化包括哪些帝国做企业网站
  • 做网站seo赚钱吗网络维护和故障维修
  • 企业网站可以自己做摄影网站开发背景怎么写
  • 网站百度指数seo最好的工具
  • 宝安专业网站建设推荐设计感强的网站
  • 网站建设 6万元北京知名的品牌设计公司
  • 网站建设的总体需求是什么vmware 下wordpress
  • 光谷网站建设请检查网络
  • 申请建设网站的报告书商务网站开发课程体会
  • 网站开发实训总结致谢群晖wordpress设置
  • 关于酒店网站建设的摘要天津市建设工程信息网官网首页
  • 网站alexa排名查询手机网站制作器
  • 建设小辣猫的网站电子毕业设计网站建设
  • 询广西南宁网站运营礼品定制
  • 建筑公司网站作用免费查看招标信息的网站
  • 建筑设计公司名字起名大全html网站 怎么做seo
  • 网站群建设模板迁移原站迁移pc巩义网站建设案例课堂
  • 烟台高端网站开发wordpress 设置权限
  • 中小企业网站制作流程网站开发和设计人员的岗位要求
  • 公司网站建设多少费用河北城乡建设官网站
  • 国科联创网站建设广告传媒公司招聘信息
  • 网站后台文章删了 怎么前台还有一级做爰片软件网站
  • 辽宁省建设注册中心网站wordpress 博客插件