深度剖析JVM调优法则,神器Arthas从CPU/内存出发轻松掌握调优实战技巧

155 阅读1分钟

场景一、CPU过高

CPU占用过高排查思路:

step1:进行arthas

java -jar arthas-boot.jar

step2:输入deashboard

如何不记得命令可以在控制台输入help

step3:查看线程栈信息

thread ID

从线程栈信息中定位到具体的java代码。

场景二、内存占用过高

内存占用过高排查思路:

step1:进行arthas

java -jar arthas-boot.jar

step2:输入deashboard

在dashboard页面中,可以通过点击左侧的“Memory”标签页,查看Java应用程序的内存占用情况。其中,“Heap Memory Usage”图表显示了Java堆内存的使用情况,“Non-Heap Memory Usage”图表显示了非Java堆内存(如永久代、Metaspace等)的使用情况。我们可以通过观察这些图表,找出Java应用程序中存在的内存泄漏或其他内存问题。

step3:导出dump文件

heapdump heapdump.hprof

导出后就使用jvisualvm或mat进行分析。

  • jvisualvm

  • mat

mat还比较智能,直接把存在问题的给你列出来

===============================

如果文章对你有帮助,不要忘记加个关注、点个赞!必回关!!!