JAVA CPU 內存問題分析方法(簡要)

我這我的挺懶的,因此我只寫下大概的步驟,具體你們能夠再去baidu或者google。java

Linux環境下:工具

CPU高問題的查找方法google

1:經過jstack命令將對應cpu高的進程的線程堆棧打印出來線程

2:經過top -H -p 將當時java進程的CPU線程列舉出來,找到佔用高的線程的PID進程

3:將PID經過計算器轉換成16進制數內存

4:將獲得的16進制數在第1步導出的jstack文件中進行查找定位到具體的調用堆棧io


內存高問題的查找方法map

1:經過jmap命令將對應內存高的進程的dump文件輸出,獲得的是.hprof文件方法

2:使用IBM的MAI工具,注意用這個版本MemoryAnalyzer-Incubation-0.8.0.20100120-win32.win32.x86;使用該工具將前面得出的dump文件導進去cpu

3:MAI工具可以幫你分析出哪一個地方佔用的內存較多

相關文章
相關標籤/搜索