https://my.oschina.net/feichexia/blog/196575
查看java最耗CPU的代码
1.jps 查看java进程
2.top -Hp pid 看最上面一条的cpu TIME+占用CPU的耗时。并记录最前面的java线程ID
3.printf "%x\n" java线程ID (得到16进制的线程ID)
4.jstack pid | grep 16进制线程ID
查看java堆内存使用
jmap查看堆使用状况,一般结合jhat使用
jmap -heap pid
jmap -histo:live 21711 | more
jmap -dump:format=b,file=dumpFileName pid
jhat -J-Xmx512m -port 9998 /tmp/dump.dat
jstat -gc 21711(pid) 250(耗时) 4(几条数据)
hprof能够展现CPU使用率,统计堆内存使用情况。
javac -J-agentlib:hprof=cpu=times Hello.java
javac -J-agentlib:hprof=heap=sites Hello.java
javac -J-agentlib:hprof=heap=dump Hello.java