JVM——如何对java的垃圾回收机制调优?

GC 调优的核心思路就是尽可能的使对象在年轻代被回收,减少对象进入老年代。

具体调优还是得看场景根据 GC 日志具体分析,常见的需要关注的指标是 Young GC 和 Full GC 触发频率、原因、晋升的速率、老年代内存占用量等等。

比如发现频繁会产生 Ful GC,分析日志之后发现没有内存泄漏,只有 Young GC 之后会有大量的对象进入老年代,然后最终触发 FulGC。所以就能得知是 Survivor 空间设置太小,导致对象过早进入老年代因此调大 Survivor。

或者是晋升年龄设置的太小,也有可能分析日志之后发现是内存泄漏、或者有第三方类库调用了System.gc 等等。

反正具体场景具体分析,核心思想就是尽量在新生代把对象给回收了。

相关推荐
Listen·Rain15 小时前
提示词和提示词模板
java·人工智能·spring boot
wuqingshun31415915 小时前
重写equals而不重写hashCode,会出什么问题?
java·开发语言
我今晚不熬夜15 小时前
Java语言实现Modbus协议通过用串口读取数据(以RTU为例)
java·网络协议
小锋java123416 小时前
Maven 4 要来了:15 年后,Java 构建工具迎来"彻底重构"
java·maven
卓怡学长16 小时前
w269基于spring boot + vue 候鸟监测数据管理系统
java·数据库·spring boot·spring·intellij-idea
孫治AllenSun17 小时前
【MDC】使用 MDC 封装一个 LogMdcUtil 工具类
java·spring boot·后端
济*沧*海17 小时前
BaseMapper的介绍
java·windows·tomcat
plainGeekDev17 小时前
依赖管理 → Version Catalog
android·java·kotlin
淘源码d18 小时前
医学影像云PACS系统——PACS诊断工作站
java·源码·影像处理·医院管理系统·影像工作站·云pacs系统·dicom 标准通信
KobeSacre19 小时前
Semaphore 源码
java·开发语言