10、假如生产环境出现CPU占用过高,请谈谈你的分析思路和定位

结合Linux和JDK命令一块分析

案例步骤

1.先用top命令找出CPU占比最高的

image-1662990570447

2.ps -ef 或者jps进一步定位,得知是一个怎么样的一个后台程序给我们惹事

image-1662990583697
实操:
image-1662990593798

3.定位到具体线程或者代码

  • ps -mp 进程 -o THREAD,tid,time
    image-1662990618655
  • 参数解释
    image-1662990632933

4.将需要的线程ID转换为16进制格式(英文小写格式)

image-1662990647219
也可以使用windows自带计算器-程序员模式
image-1662990661449

5.jstack 进程ID | grep tid(16进制线程ID小写英文) -A60

image-1662990678361

最近的文章

11.对于JDK自带的JVM监控和性能分析工具用过哪些?一般你是怎么用的?

大纲是什么性能监控工具jps(虚拟机进程状况工具)jinfo(Java配置信息工具)jmap(内存映像工具)jstat(统计信息监视工具)jstack(堆栈异常追踪工具)jvisualvmjconsole…

继续阅读
更早的文章

9、生产环境服务器变慢,诊断思路和性能评估谈谈?

大纲整机:top运行有问题程序排查:运行top命令,如下:CPU:vmstat查看CPU(包含不限于)查看额外查看所有CPU核信息mpstat -P ALL 2每个进程使用CPU的用量分解信息pidstat -u 1 -p 进程编号内存:free应用程序可用内存数查看额外pidstat -p 进程号…

继续阅读