场景一、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还比较智能,直接把存在问题的给你列出来
===============================
如果文章对你有帮助,不要忘记加个关注、点个赞!