一、概述
当应用程序部署到生产环境后,无论是直接接触物理服务器还是远程Telnet到服务器上都可能会受到限制,借助tools.jar类库里面的接口,我们可以直接在应用程序中实现强大的监控分析功能。
二、JDK命令行工具
1、jps-虚拟机进程状况工具
jps可以列出正在运行的虚拟机进程,并显示虚拟机执行主类(Main Class,main()函数所在的类)的名称,以及这些进程的本地虚拟机的唯一ID(LVMID)。对于本地虚拟机进程来说,LVMID与操作系统进程ID(PID)是一致的。如果同时启动了多个虚拟机进程,无法根据进程名称定位时,那就只能依赖jps命令显示主类的功能才能区分了。
常用功能选项:
2、jstat-虚拟机统计信息监视工具
jstat是用于监视虚拟机各种运行状态信息的命令行工具,它可以显示本地或远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据,他是运行期虚拟机性能问题的首选工具。
3、jinfo-Java配置信息工具
jinfo的作用是实时的查看和调整虚拟机的各项参数。
4、jmap-Java内存映像的工具
jmap命令用于生产堆转储快照,一般称为dump文件。jmap还可以查询finalize执行队列,Java堆和永久代的详细信息,如空间使用率、当前用的是哪种收集器等。
5、jhat-虚拟机堆转储快照分析工具
jhat用来分析jmap生产的堆转储快照。
6、jstack-Java堆栈跟踪工具
jstack命令用于生产虚拟机当前时刻的线程快照。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的几个,生成线程快照的主要目的是定位线程出现长时间停顿的原因。
网友评论