1,首先在服務器輸入top命令,找出消耗cpu最多的進程的pid

可以看到pid為5563消耗cpu資源最多
2,輸入命令top -Hp 5563查看這個進程下各個線程消耗資源情況

3,然后輸入jstack 5563 > dump.txt導出該java進程的堆棧情況,可以多導出幾個文件對比
4,將線程的PID5568,5567,5565,5566轉(zhuǎn)成16進制,window自帶的計算機就很好用

轉(zhuǎn)成16進制分別是15bd,15be,15bf,15c0
5,打開dump.txt,剛才轉(zhuǎn)成16進制的值便是線程的nid,搜索15bd,15be,15bf,15c0

我這邊消耗資源多的線程都是gc,看來是我的jvm的堆內(nèi)存設小了,囧
順便分析下在線查看jstack文件的網(wǎng)站:https://jstack.review/#tda_1_dump