这些工具都位于Jdk安装路径下的bin文件夹中

1、jps(JVM Process Status Tool)虚拟机进程状况工具

用于显示指定系统内所有的Hotspot虚拟机进程。

输出LVMID(jps -q),输出虚拟机进程启动时传递给main()的参数(jps -l),输出虚拟机启动时的参数(jps -v)

2、jstat(JVM Statistics Monitoring Tool)虚拟机统计信息监视工具

用于监视虚拟机各种运行状态信息的命令行工具。是非常常用的工具。

3、jinfo(Configuration Info for Java)Java配置信息工具

用于实时地查看和调整虚拟机各项参数。-flag可查看未显示指定的参数列表,-flag [+|-] name或-flag name=vlaue可修改部分运行期可写的虚拟机参数。

4、jmap(Memory Map for Java)Java内存映像工具

用于生成堆转储快照(headdump或者dump)文件。可查询finaliz执行队列,Java堆和永久代详细信息(空间使用率,用的是什么收集器等),查看每个类实例,空间占用统计等。

5、jhat(JVM Heap Analysis Tool)虚拟机堆转储快照分析工具

搭配jmap使用,内置http微服务器,但是因为功能简陋一般不会用。

6、jstack(Stack Trace for Java)Java堆栈跟踪工具

用于生成虚拟机当前时刻的线程快照(threaddump或者javacore文件)。线程快照就是当前虚拟机内每一条线程正在执行的方法堆栈的集合,生成线程快照的主要目的是定位线程出现长时间停顿的原因,如线程间死锁、死循环、请求外部资源导致的长时间等待等都是导致线程长时间停顿的常见原因。

7、HSDIS:JIT生成代码反汇编

8、BTrace:运行中注入代码

Visual VM中的插件,为了解决难以停止的生产环境中的服务,通过注入代码打印方法参数和返回值,打印调用堆栈、性能监控、定位连接泄露和内存泄露等

KAI Java