JVM 查看配置 jinfo 及使用 jstat,查看堆栈jstack及GC

1. Jinfo

查看正在运行的Java应用程序的扩展参数: 包含 JVM 参数与 java 系统参数

命令: jinfo pid

2 jstat

查看堆内存使用情况及 GC 回收频率等:

** jstat [-命令选项] [vmid] [间隔时间(毫秒)] [查询次数]**

2.1 jstat -gc pid 最常用,可以评估程序内存使用及GC压力整体情况

S0C:第一个幸存区的大小,单位KB

S1C:第二个幸存区的大小

S0U:第一个幸存区的使用大小S1U:第二个幸存区的使用大小

EC:伊甸园区的大小

EU:伊甸园区的使用大小

OC:老年代大小

OU:老年代使用大小

MC:方法区大小(元空间)

MU:方法区使用大小

CCSC:压缩类空间大小

CCSU:压缩类空间使用大小

YGC:年轻代垃圾回收次数

YGCT:年轻代垃圾回收消耗时间,单位s

FGC:老年代垃圾回收次数

FGCT:老年代垃圾回收消耗时间,单位s

GCT:垃圾回收消耗总时间,单位s

2.2 jstat -gcutil pid 查看垃圾回收统计

S0:幸存1区当前使用比例

S1:幸存2区当前使用比例

E:伊甸园区使用比例

O:老年代使用比例

M:元数据区使用比例

CCS:压缩使用比例

YGC:年轻代垃圾回收次数

FGC:老年代垃圾回收次数

FGCT:老年代垃圾回收消耗时间

GCT:垃圾回收消耗总时间

2.3 查看其他类型堆内存使用统计;

// 查看堆内存统计:

jstat -gccapacity pid

// 查看老年代垃圾回收

jstat -gcold pid

// 查看新生代垃圾回收

jstat -gcnew pid

// 查看新生代内存统计

jstat -gccapacity pid

3 jstack

jstack 查看 jvm的堆栈。 命令:

jstack [-l][-e] <pid> (to connect to running process)

Options:

-l long listing. Prints additional information about locks

-e extended listing. Prints additional information about threads

-? -h --help -help to print this help message

相关推荐
波波00715 小时前
每日一题:.NET 中什么是 LOH(大对象堆)?为什么频繁使用大数组或大字符串可能导致性能问题?如何优化?
java·jvm·算法
小北方城市网15 小时前
JVM 调优实战指南:从 GC 频繁到性能稳定
jvm·数据库·spring boot·后端·mysql·mybatis
zyb114758243315 小时前
JVM的学习
jvm·python·学习
hello 早上好15 小时前
01_ JVM 核心架构详解
jvm·架构
chilavert3181 天前
技术演进中的开发沉思-326 JVM:内存区域与溢出异常(上)
java·jvm
多多*1 天前
计算机网络相关 讲一下rpc与传统http的区别
java·开发语言·网络·jvm·c#
尽兴-2 天前
JVM对象创建与内存分配机制
jvm·指针压缩·内存分配机制·对象分配策略·分代模型
chilavert3182 天前
技术演进中的开发沉思-327 JVM:内存区域与溢出异常(下)
java·jvm
wb043072012 天前
一次jvm配置问题导致的数据库连接异常
服务器·jvm·数据库·后端
不穿格子的程序员2 天前
JVM篇5:编译和解释的区分 + 区分堆栈的好处 + 垃圾回收期的选择
jvm·gc选择