基础故障处理工具

  • jps: JVM process status tool,列出正在运行的虚拟机进程,显示虚拟机执行主类名称,以及这些进程的本地虚拟机唯一ID。可以加入参数:

linux怎么设置java虚拟机参数 java虚拟机命令_垃圾回收



  • jps -m 运行时传入主类的参数;
    jps -v 虚拟机参数;
    jps -l 运行的主类全名 或者jar包名称;
    也可以一块使用 jsp -mlv。
  • jstat: 用于监视虚拟机各种运行状态信息的命令行工具,包括监视类装载、内存、垃圾回收、jit编译信息。jstat -gcutil 3344 1000 10

linux怎么设置java虚拟机参数 java虚拟机命令_垃圾回收_02

  • 每隔1000毫秒执行一次 10次。
  • jinfo: 实时查看和调整虚拟机的各项参数.

linux怎么设置java虚拟机参数 java虚拟机命令_垃圾回收_03

  • 第一条指令为:是否启用Serial垃圾回收,输出-,表示不启用;
    第二条指令为:是否启用G1垃圾回收,输出+,表示启用。
  • jmap: 用于生成堆转储快照,还可以查询finalize执行队列,Java堆和方法区的详细信息。

linux怎么设置java虚拟机参数 java虚拟机命令_垃圾回收_04

  • **jhat: ** JVM heap Analysis Tool(分析堆)十分占据内存与CPU,使用较少。
  • **jstack: ** 用于生成虚拟机当前时刻线程快照。目的:定位线程出现长时间停顿的原因(例如线程死锁、死循环等)。 命令格式:jstack [option] vmid

linux怎么设置java虚拟机参数 java虚拟机命令_垃圾回收_05



  • 可以通过Thread.getAllStackTraces()方法获取StackTraceElement,来代替jstack方法。

可视化故障处理工具

  • JHSDB: 基于服务性代理实现的进程外调试工具,可以用它来调试虚拟机进程或者dump出来的内存转储快照。
  • JConsole: 是一种基于JMX的可视化监视、管理工具,可进行内存管理、线程管理、查看死锁等。
  • VisualVM: 是一款免费的,集成了多个 JDK 命令行工具的可视化工具,它提供强大的分析能力,对 Java 应用程序做性能分析和调优。这些功能包括生成和分析海量数据、跟踪内存泄漏、监控垃圾回收器、执行内存和 CPU 分析,同时它还支持在 MBeans 上进行浏览和操作。是目前为止功能最强大的运行监测和故障处理工具。
  • Java Mission Control: 用于监控Java虚拟机。

linux怎么设置java虚拟机参数 java虚拟机命令_Java_06