您的位置:首页 > 其它

JVM调优方法总结

2015-04-06 21:45 134 查看
查看Server PID - jps

查看线程状态 - jstack

查看新生代和老年代 - jstat

在这里我使用的都是JDK自带的命令 JAVA_HOME/bin/*


查看Server PID - jps

如果需要分析某一个Server,首先当然需要知道它的PID.使用jps可以用显示当前jvm的进程,当然也可以使用ps -ef |grep java.

命令格式:

options:

hostid:


查看线程状态 - jstack

jstack可以dump当前Server的线程运行状态。如是否存在死锁,线程数量,以及各个线程的状态,资源竞争情况等。如果现在运行的java程序呈现挂起的状态,jstack是非常有用的。

option:

pid 需要被打印配置信息的java进程id,可以用jps查询.

查看内存分配-jmap

jmap可以输出所有内存中对象,甚至可以将VM 中的heap,以二进制输出成文本。使用方法 jmap -histo pid。如: jmap -histo pid
> heap.log可以将其保存到文本中去,在一段时间后,使用文本对比工具,可以对比出GC回收了哪些对象。jmap -dump:format=b,file=outfile 3024可以将进程的内存heap输出出来到outfile文件里,再配合MAT(内存分析工具(Memory Analysis Tool )).

option:

pid 需要被打印配相信息的java进程id,创业与打工的区别 - 博文预览,可以用jps查问.


查看新生代和老年代 - jstat

jstat工具特别强大,有众多的可选项,详细查看堆内各个部分的使用量,以及加载类的数量。使用时,需加上查看进程的进程id,和所选参数。以下详细介绍各个参数的意义。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: