1、jstat
jstat:用于监视 Java 虚拟机的各种统计信息,如堆内存使用情况、垃圾回收统计等。
示例命令:jstat -gc <pid> <interval> <count>,其中 <pid> 是 Java 进程的进程 ID,<interval> 是统计间隔时间(以毫秒为单位),<count> 是统计次数。
示例:jstat -gc 12345 1000 10 将每隔 1 秒统计 Java 进程 ID 为 12345 的 JVM 的垃圾回收情况。
2、jstack
jstack:用于生成 Java 虚拟机线程快照,用于分析线程状态、死锁等问题。
示例命令:jstack <pid>,其中 <pid> 是 Java 进程的进程 ID。
示例:jstack 12345 生成 Java 进程 ID 为 12345 的 JVM 的线程快照。
3、jmap
jmap:用于生成 Java 虚拟机的堆转储快照,以便分析内存使用情况、查找内存泄漏等。
示例命令:jmap -dump:format=b,file=<filename> <pid>,其中 <filename> 是生成的转储文件名,<pid> 是 Java 进程的进程 ID。
示例:jmap -dump:format=b,file=heap_dump.bin 12345 将生成 Java 进程 ID 为 12345 的 JVM 的堆转储快照,并保存到名为 heap_dump.bin 的文件中。
4、jvisualvm
jvisualvm:一个可视化的 Java 虚拟机监控和故障排除工具,可以通过 GUI 查看各种性能指标、内存使用情况、线程状态等。
通过命令行启动:jvisualvm 通过图形界面启动:在命令行中输入 jvisualvm 并按 Enter 键。
注意:本文归作者所有,未经作者允许,不得转载