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

对线程池设置做压测

线程池代码

@Configuration
public class ThreadPoolConfig
{// 核心线程池大小private int corePoolSize = 24;// 最大可创建的线程数private int maxPoolSize = 25;// 队列最大长度private int queueCapacity = 100;// 线程池维护线程所允许的空闲时间private int keepAliveSeconds = 300;@Bean(name = "stockThreadPool")public ThreadPoolTaskExecutor threadPoolTaskExecutor(){ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();executor.setMaxPoolSize(maxPoolSize);executor.setCorePoolSize(corePoolSize);executor.setQueueCapacity(queueCapacity);executor.setKeepAliveSeconds(keepAliveSeconds);executor.setThreadGroupName("JM");executor.setThreadNamePrefix("stock-thread-");// 线程池对拒绝任务(无线程可用)的处理策略executor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());return executor;}
}

错误设置

压测:5000个文件同时处理,设置100个线程
在这里插入图片描述
压测结果:出现很多超时TIMED_WAITING

原因:如果线程数设置太多,会一直开辟新线程,如果GC自动回收来不及,会出现很超时线程,最后会引起OOM

正确设置

压测:5000个文件同时处理,设置10个线程
在这里插入图片描述
压测:5000个文件同时处理,设置10个线程
压测结果:线程都正常运行RUNNABLE

线程池设置多少合适

https://blog.csdn.net/weixin_44371237/article/details/132690861

http://www.lryc.cn/news/157758.html

相关文章:

  • 【网络通信 -- WebRTC】项目实战记录 -- mediasoup android 适配 webrtc m94
  • 【力扣周赛】第 357 场周赛(⭐反悔贪心)
  • css重置
  • tcpdump相关
  • MFC新建内部消息
  • linux查找目录
  • 机器学习:可解释学习
  • UE5- c++ websocket里实现调用player里的方法
  • 线性代数的学习和整理18:什么是维度,什么是秩?秩的各种定理秩的计算 (计算部分未完成)
  • Centos 6.5 升级到Centos7指导手册
  • 详解python中的映射类型---字典
  • gdal求矢量图形的形心
  • <深度学习基础> Batch Normalization
  • Ubuntu yolov5 环境配置
  • 【自执行闭包JS逆向】某网站登录MD5加密分析
  • Stable Diffuse 之 安装文件夹、以及操作界面 UI 、Prompt相关说明
  • 【Linux】- 一文秒懂shell编程
  • CentOS下多网卡绑定多IP段时导致只有一个会通的问题解决
  • 关于实现 Vue 动态数据显示,比如数字 0 或 1 怎么显示为 男 或 女等等的动态显示实现方法
  • mac制作ssl证书|生成自签名证书,nodejs+express在mac上搭建https+wss(websocket)服务器
  • Unix System V BSD POSIX 究竟是什么?
  • 数据集学习笔记(六):目标检测和图像分割标注软件介绍和使用,并转换成YOLO系列可使用的数据集格式
  • 【高阶数据结构】红黑树 {概念及性质;红黑树的结构;红黑树的实现;红黑树插入操作详细解释;红黑树的验证}
  • 获取对象占用内存
  • mysql UUID 作为主键的问题
  • 2023高教社杯全国大学生数学建模竞赛选题建议
  • 分类预测 | MATLAB实现GRNN广义回归神经网络多特征分类预测
  • 低功耗窗帘电机解决方案成功应用并通过 Matter 1.1 认证
  • 如何修复老照片?老照片修复翻新的方法
  • MySQL:区分大小写