JVM——》常用命令

一、jps(查看java进程)

The jps command lists the instrumented Java HotSpot VMs on the target system. The command is limited to reporting information on JVMs for which it has the access permissions.
jps命令列出目标系统上已检测的Java热点虚拟机。该命令仅限于报告其具有访问权限的JVM上的信息。

语法:
  jps
  jps -l

JVM——》常用命令_第1张图片

二、jinfo(实时查看和调整JVM配置参数)

The jinfo command prints Java configuration information for a specified Java process or core file or a remote debug server. The configuration information includes Java system properties and Java Virtual Machine (JVM) command-line flags.
jinfo命令打印指定Java进程或核心文件或远程调试服务器的Java配置信息。配置信息包括Java系统属性和Java虚拟机(JVM)命令行标志。

1、jinfo查看参数

语法:
  jinfo -flags PID			查看某个java进程所有属性的值
  jinfo -flag name PID 		查看某个java进程指定name属性的值
  
示例:
  jinfo -flags 21970
  jinfo -flag MaxHeapSize 21970 
  jinfo -flag UseG1GC 21970

JVM——》常用命令_第2张图片

2、jinfo修改参数

语法:
  jinfo -flag [+|-] PID 
  jinfo -flag = PID

三、jstat

The jstat command displays performance statistics for an instrumented Java HotSpot VM. The target JVM is identified by its virtual machine identifier, or vmid option.
jstat命令显示已检测的Java HotSpot VM的性能统计信息。目标JVM由其虚拟机标识符或vmid选项标识。

语法:
  jstat -class PID 1000 10 	查看某个java进程的类装载信息,每1000毫秒输出一次,共输出10次
  jstat -gc PID 1000 10		查看某个java进程的垃圾收集信息,每1000毫秒输出一次,共输出10次

示例:
  jstat -class 21970 1000 10
  jstat -gc 21970 1000 10

JVM——》常用命令_第3张图片

四、jstack

The jstack command prints Java stack traces of Java threads for a specified Java process, core file, or remote debug server.
jstack命令打印指定Java进程、核心文件或远程调试服务器的Java线程的Java堆栈跟踪。


参考链接:Java——》jstack分析死锁案例

语法:
  jstack PID	查看某个java进程的类堆栈信息

示例:
  jstack 21970

JVM——》常用命令_第4张图片

五、jmap

The jmap command prints shared object memory maps or heap memory details of a specified process, core file, or remote debug server.
jmap命令打印指定进程、核心文件或远程调试服务器的共享对象内存映射或堆内存详细信息。


参考链接:JVM——》内存泄露案例

语法:
  jmap -heap PID							打印某个java进程堆内存相关信息
  jmap -dump:format=b,file=heap.hprof PID	导出某个java进程堆内存相关信息

示例:
  jmap -heap 21970
  jmap -dump:format=b,file=heap.hprof 21970

JVM——》常用命令_第5张图片

JVM——》常用命令_第6张图片

1、模拟堆内存溢出

参考链接:JVM——》内存泄露案例

参数:
  -Xms20M -Xmx20M

2、堆内存溢出时自动导出堆文件

参数:
  -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=heap.hprof

你可能感兴趣的:(JVM,Java,jvm,jstat,jinfo,jstack,jmap)