top
首選使用top命令查看cpu占用率較高得程序是不是java服務(wù)
并找到進(jìn)程pid,然后使用top -Hp pid
查看占據(jù)cpu資源得thread是那些尺栖,屬于那些進(jìn)程猿挚,使用jstack保存線程快照日志
jstack pid > thread_stack.log
然后就可以查看具體代碼具體問題了拌蜘。
arthas
啟動arthas之后情龄,選擇具體java進(jìn)程荠商,使用命令dashboard就可以看到全部的信息了皆撩。
使用thread命令
查看所有線程信息
使用thread id查看具體的線程堆棧信息
如何查看歷史線程信息
定時轉(zhuǎn)儲jstack日志扣墩。
jstack <pid> > thread_dump_$(date +%Y%m%d_%H%M%S).txt