二开空闲线程不断累加导致系统线程池满
适用版本
通用
问题描述
系统线程池已配置65536但过一段时间就会被占满。
原因分析:
执行命令 ps -eL | awk '{print $1}' | sort |uniq -c | sort -nr | head 进行监控,找到消耗线程池最高的进程,进程号为36740
通过命令 pwdx 36740 可获取该进程的调用路径,判断是实例的java进程,于是进入jdk的bin目录下执行 ./jstack 36740 > /tmp/javacore.txt 线程堆栈,使用jca工具打开如下
发现大量com.mchange.v2.async.ThreadPoolAsynchronousRunner$PoolThread.run(ThreadPoolAsynchronousRunner.java:534)
相关线程,于是使用云巡检工具中的类位置查找工具进行搜索,发现类com.mchange.v2.async.ThreadPoolAsynchronousRunner所在jar包为二次开发相关jar包。
解决方法:
由二次开发相关人员修改相应代码逻辑,在使用完线程后主动进行释放。
二开空闲线程不断累加导致系统线程池满
适用版本通用问题描述系统线程池已配置65536但过一段时间就会被占满。原因分析:执行命令 ps -eL | awk '{print $1}' | s...
点击下载文档
本文2024-09-22 20:27:24发表“eas cloud知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-eas-113743.html
您需要登录后才可以发表评论, 登录登录 或者 注册
最新文档
热门文章