查看JVM统计信息【转】

简介: 查看JVM统计信息[myname@name ~]$ jstat -gcutil 17421Warning: Unresolved Symbol: sun.gc.generation.2.space.

查看JVM统计信息

[myname@name ~]$ jstat -gcutil 17421
Warning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaN
Warning: Unresolved Symbol: sun.gc.generation.2.space.0.used substituted NaN
Warning: Unresolved Symbol: sun.gc.generation.2.space.0.capacity substituted NaN
  S0     S1     E      O      P     YGC     YGCT    FGC    FGCT     GCT   
  0.00  35.13  75.78  77.25      �  20385  114.721    10    0.428  115.149
  • S0、S1 代表两个Survivor区的占比;
  • E 代表 Eden 区占比;
  • O(Old)代表老年代占比;
  • P(Permanent)代表永久代占比;
  • YGC(Young GC)代表Minor GC次数;
  • YGCT代表Minor GC耗时;
  • FGC(Full GC)代表Full GC耗时;
  • GCT代表Minor & Full GC共计耗时。

Java 堆分为新生代和老年代,新生代一般划分为三块区域, Eden + From Survivor + To SurvivorEdenSurvivor 的内存比为8:1,每次只使用一个Eden 和一个 Survivor 区域,另一个 Survivor 用于复制收集算法回收内存。

对象一般尽量分配到新生代中,而对于大对象(长字符串和大数组)直接分配在老年代中,同时“年龄”长的的对象会从新生代自动晋升到老年代中。

Java 方法区称为永久代,只有 HotSpot 虚拟机才存在永久代。

当 Eden 区域分配不足时,自动发生一次 Minor GC。

当发生 Minor GC 时,虚拟机会自动检测(比较)新生代晋升到老年代的对象内存大小和老年代剩余内存大小,如果晋升>剩余,则发生一次Full GC;如果晋升<剩余,则去检测老年代的内存担保 HandlePromotionFailure 是否允许担保失败,如果不允许担保失败,则发生一次Full GC,如果允许失败,则进行一次Minor GC。

相关文章
|
Prometheus 监控 Cloud Native
【监控利器Prometheus】——Prometheus+Grafana监控SpringBoot项目JVM信息
Prometheus+Grafana监控SpringBoot项目JVM信息 1. SpringBoot项目配置JVM采集 2. Prometheus配置 3. 配置grafana 4. 扩展-通过JMX Exporter监控JVM信息
【监控利器Prometheus】——Prometheus+Grafana监控SpringBoot项目JVM信息
|
25天前
|
开发者 Java
JVM内存问题之top命令的物理内存信息中,'used'和'free','avail Mem'分别表示什么
JVM内存问题之top命令的物理内存信息中,'used'和'free','avail Mem'分别表示什么
|
2月前
|
Java
JVM打印GC信息
JVM打印GC信息
21 1
|
Web App开发 消息中间件 Prometheus
Spring Boot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控等!(一)
Spring Boot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控等!
|
9月前
|
Java
JVM学习笔记-如何在IDEA打印JVM的GC日志信息
若要在Idea上打印JVM相应GC日志,其实只需在Run/Debug Configurations上进行设置即可。
91 0
|
10月前
|
存储 Java 编译器
【面试题精讲】JVM-方法区-元信息
【面试题精讲】JVM-方法区-元信息
|
JSON 监控 安全
Spring Boot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控等!(二)
Spring Boot 服务监控,健康检查,线程信息,JVM堆信息,指标收集,运行情况监控等!
|
Java 编译器 C++
JVM优化过头了,直接把异常信息优化没了? (下)
JVM优化过头了,直接把异常信息优化没了? (下)
127 0
JVM优化过头了,直接把异常信息优化没了? (下)
|
消息中间件 缓存 Java
JVM优化过头了,直接把异常信息优化没了? (中)
JVM优化过头了,直接把异常信息优化没了? (中)
169 0
JVM优化过头了,直接把异常信息优化没了? (中)
|
Java 编译器
JVM优化过头了,直接把异常信息优化没了? (上)
JVM优化过头了,直接把异常信息优化没了? (上)
102 0
JVM优化过头了,直接把异常信息优化没了? (上)