1. jps:虚拟机进程状况工具
    可以列出正在运行的虚拟机进程,并显示虚拟机执行主类函数所在的名称,以及这些进程的本地虚拟机唯一ID(LVMID,Local Virtual Machine Identifier)。
  2. jstat:虚拟机统计信息监视工具
    用于监视虚拟机各种运行状态信息的命令行工具,可以显示本地或远程虚拟机进程中的类装载、内存、垃圾收集、JIT编译等运行数据。
    可选参数如下图所示 Java虚拟机——Java虚拟机性能监控
  3. jinfo:Java配置信息工具
    作用是实时地查看和调整虚拟机参数。
    jinfo可以使用-sysprops选项把虚拟机进程的System.getProperties()的内容打印出来。
    jinfo还可以使用-flag [+|-]name或-flag name=value修改一部分运行期可写的虚拟机参数值。
  4. jmap:Java内存映像工具
    jmap(Memory Map for Java)用于生成堆转储快照。
    可选参数如下图所示 Java虚拟机——Java虚拟机性能监控
  5. jhat:虚拟机堆转储快照分析工具
    jhat(JVM Heap Analysis Tool)命令与jmap搭配使用,来分析jmap生成的堆转储快照。
    一般不会在部署应用程序的服务器上直接分析dump文件,尽量将dump文件拷贝到其他机器上进行分析,因为分析工作比较耗费时间和资源。
  6. jstack:Java堆栈跟踪工具
    jstack(Stack Trace for Java)命令用于生成虚拟机当前时刻的线程快照。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的目的是定位线程出现长时间停顿的原因。

以上6种是Java命令行性能监控,另外还有两个功能强大的可视化工具

  1. JConsole
    可以通过JDK/bin目录下的“jconsole.exe”启动JConsole。
  2. VisualVM

相关文章: