一些常用的JDK附带工具
在JDK的安用装目录bin下,有一些有非常实用的小工具,可用于分析JVM初始配置、内存溢出、内存泄漏、硬件资源异常等问题,我们接下来将对些常用的工具进行一些说明。默认的执行这些命令的时候都是要进入到其所在目录下,例:/usr/jdk1.6.0_45/bin
1.jps
通过jps工具我们可以知道当前正在运行的Java进程,以及这些进程初始化的参数配置。命令如下:./jps -l -m -v
从图中我们可以看到这些java进程的进程号,以及启动时的参数配置信息。
2.jstat
使用jstat可以看到GC的统计信息。命令如下:./jstat -gcutil <pid>
3.jmap
3.1使用jmap客户查看当前进程堆内存的初始化时的大小,分配比率。命令如下:./jmap -heap <pid>
3.2 导出dump文件借助mat工具分析内存相关问题,命令如下:./jmap -dump:format=b,file=xxxx.hprof <pid>
碰到导出失败的时候,请检查下jdk所属用户跟<pid>进程启动用户是否是同一个用户,当不同是则修改成同一个用户即可。