java开发人员肯定知道jdk的bin目录中有java.exe javac.exe这两个命令行工具,但并非所有程序员都了解过jdk的bin目录之中其他命令行的作用。
jdk的工具,体积都比较小,这些命令行工具大多是jdk/lib/tools.jar类库的一层薄包装而已。他们的主要功能代码在tools类库中实现。
jdk开发团队选择采用java代码来实现这些监测工具是有特别用意的。当程序部署到生产环境后,无论直接接触物理服务器还是远程到服务器都可能受到限制。借助tools.jar类库里面的接口,我们可以直接在应用程序中实现强大的监控分析功能。
名称 主要作用
jps JVM Process Status Tool 显示指定系统内所有的hotspot虚拟机进程
jstat JVM Statistic Monitoring Tool 用于手机HotSpot虚拟机各方面的运行数据
jinfo Configuration Info for Java 显示虚拟机配置信息
jmap Memory Map for Java 生产虚拟机的内存转储快照(heapdump文件)
jhat JVM Heap Dump Browser 用于分析heapdump文件,它会建立一个HTTP/HTML服务器,让用户可以再浏览器上查看分析结果
jstack Stack Trace for Java 显示虚拟机线程快照
http://www.cnblogs.com/zhenjing/archive/2013/02/18/java_debug.html
http://developer.51cto.com/art/201204/327130.htm
http://blog.sina.com.cn/s/blog_62d0d67b0100uekn.html