互联网服务WebLogicOracle 12c

Java有十几个线程占用了90%CPU资源,导致系统进不去?

oracle linux 7.4 cpu核数 16

中间件weblogic 12c
数据库oracle12cr2
这几天这几天业务系统CPU资源使用率超过1300,导致系统系统进不去进不去,通过抓取相应进程,抓取到Java有十几个十几个线程,每个使用都是都是90%以上

参与6

2同行回答

dogboydogboy系统运维工程师a
上面列出的线程都是GC线程,说明JVM出现问题了,可能的原因:1、JVM的最大值设置偏小,无法满足高峰期的应用需求。解决办法是调大JVM大小2、应用程序存在内存泄露,堆积到一定程度引起JVM不足。解决办法是收集heapdump或coredump分析具体大对象情况3、应用程序部分代码对内存的控...显示全部

上面列出的线程都是GC线程,说明JVM出现问题了,可能的原因:
1、JVM的最大值设置偏小,无法满足高峰期的应用需求。解决办法是调大JVM大小
2、应用程序存在内存泄露,堆积到一定程度引起JVM不足。解决办法是收集heapdump或coredump分析具体大对象情况
3、应用程序部分代码对内存的控制不妥,比如超大文件的导出、内存分页等等,会导致短时间JVM使用率上升,引起JVM不足
4、gc频繁。可能的原因是应用程序进行了字符串的拼接,引起频繁GC。
针对你的具体情况,可能是1、2情况,建议收集GC日志看看JVM的具体情况,定位方向后再具体分析

收起
银行 · 2020-10-09
浏览1170
Luga LeeLuga Lee系统架构师None
仅凭上面的信息无法快速、准确的定位。建议:(1)gc.log 看下是否存在Full GC现象(2)通过jstack进行线程栈分析,确认是否“死锁”or“锁竞争”显示全部

仅凭上面的信息无法快速、准确的定位。
建议:
(1)gc.log 看下是否存在Full GC现象
(2)通过jstack进行线程栈分析,确认是否“死锁”or“锁竞争”

收起
互联网服务 · 2020-12-12
浏览948

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2020-09-14
  • 关注会员:3 人
  • 问题浏览:1963
  • 最近回答:2020-12-12
  • X社区推广