如何查看当前linux系统给JVM分配了多大的内存

如何查看当前linux系统给JVM分配了多大的内存,第1张

[tmp]$ ps -ef | grep java

root 9787 1 0 Sep17 ?00bin/java -Xms50m -Xmx256m

-Xms 和 -Xmx 分别代表分配JVM的最小内存和最大内存。

堆栈信息你可以用 kill -3 后面跟上java进程的pid,这样就能生成 thread dump 了以WAS为例:02:48 /opt/IBM/WebSphere/AppServer/java47

Linux 使用jstat命令查看jvm的GC情况

命令格式

jstat命令命令格式:

jstat [Options] vmid[interval] [count]

参数说明:

Options,选项,我们一般使用 -gcutil 查看gc情况

vmid

,VM的进程号,即当前运行的java进程号

interval

,间隔时间,单位为秒或者毫秒

count

,打印次数,如果缺省则打印无数次

示例说明

示例

通常运行命令如下:

jstat -gc 12538 5000

即会每5秒一次显示进程号为12538的java进成的GC情况,

显示内容如下图:

结果说明

   S0C:年轻代中第一个survivor(幸存区)的容量 (字节)

S1C

:年轻代中第二个survivor(幸存区)的容量 (字节)

S0U

:年轻代中第一个survivor(幸存区)目前已使用空间 (字节)

S1U

:年轻代中第二个survivor(幸存区)目前已使用空间 (字节)

EC

:年轻代中Eden(伊甸园)的容量 (字节)

EU

:年轻代中Eden(伊甸园)目前已使用空间 (字节)

OC

:Old代的容量 (字节)

OU

:Old代目前已使用空间 (字节)

PC

:Perm(持久代)的容量 (字节)

PU

:Perm(持久代)目前已使用空间 (字节)

YGC

:从应用程序启动到采样时年轻代中gc次数

YGCT

:从应用程序启动到采样时年轻代中gc所用时间(s)

FGC

:从应用程序启动到采样时old代(全gc)gc次数

FGCT

:从应用程序启动到采样时old代(全gc)gc所用时间(s)

GCT

:从应用程序启动到采样时gc用的总时间(s)

NGCMN

:年轻代(young)中初始化(最小)的大小 (字节)

NGCMX

:年轻代(young)的最大容量 (字节)

NGC

:年轻代(young)中当前的容量 (字节)

OGCMN

:old代中初始化(最小)的大小 (字节)

OGCMX

:old代的最大容量 (字节)

OGC

:old代当前新生成的容量 (字节)

PGCMN

:perm代中初始化(最小)的大小 (字节)

PGCMX

:perm代的最大容量 (字节)

PGC

:perm代当前新生成的容量 (字节)

S0

:年轻代中第一个survivor(幸存区)已使用的占当前容量百分比

S1

:年轻代中第二个survivor(幸存区)已使用的占当前容量百分比

E

:年轻代中Eden(伊甸园)已使用的占当前容量百分比

O

:old代已使用的占当前容量百分比

P

:perm代已使用的占当前容量百分比

S0CMX

:年轻代中第一个survivor(幸存区)的最大容量 (字节)

S1CMX

:年轻代中第二个survivor(幸存区)的最大容量 (字节)

ECMX

:年轻代中Eden(伊甸园)的最大容量 (字节)

DSS

:当前需要survivor(幸存区)的容量 (字节)(Eden区已满)

TT

: 持有次数限制

MTT

: 最大持有次数限制


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/8897185.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-22
下一篇 2023-04-22

发表评论

登录后才能评论

评论列表(0条)

保存