JVM应用CPU冲高问题

Posted tigerhsu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JVM应用CPU冲高问题相关的知识,希望对你有一定的参考价值。

CPU的核心数N和每个核心M的线程数的查询方法:https://jingyan.baidu.com/article/2a138328efdb44074a134fc5.html

如果应用程序中出现了死循环(infinite loop),则该死循环所在线程的CPU占用率为1/N*M。如N=4,M=2,则它将占据一个核心中的一个线程,其占用率为1/(2*4)即12.5% 。

参见:1、http://karunsubramanian.com/java/4-things-you-need-to-know-about-cpu-utilization-of-your-java-application/

   2、https://www.cnblogs.com/wyb628/p/8566337.html

   3、https://cloud.tencent.com/developer/article/1097500

在线GC文件分析工具:GCeasy

CPU负载模拟工具:Grex 

Windows的CPU、内存和硬盘负载模拟工具,点击这里

以上是关于JVM应用CPU冲高问题的主要内容,如果未能解决你的问题,请参考以下文章

应用程序缓慢,JVM 频繁挂起,单 CPU 设置和 Java 12+

cpu飙升怎么排查

JVM调优之jstack找出最耗cpu的线程并定位代码

Spring Boot 应用监控: Java获取 CPU,内存, JVM 内部运行状况代码

JVM 线上故障排查基本操作--CPU飙高

三步排查JVM cpu 100%问题