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

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

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

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

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

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

相关推荐
cyforkk8 分钟前
Spring 异常处理器:从混乱到有序,优雅处理所有异常
java·后端·spring·mvc
生擒小朵拉17 分钟前
STM32添加库函数
java·javascript·stm32
Z_z在努力23 分钟前
【杂类】Spring 自动装配原理
java·spring·mybatis
小小菜鸡ing1 小时前
pymysql
java·服务器·数据库
getapi1 小时前
shareId 的产生与传递链路
java
我没想到原来他们都是一堆坏人2 小时前
(未完待续...)如何编写一个用于构建python web项目镜像的dockerfile文件
java·前端·python
沙二原住民2 小时前
提升数据库性能的秘密武器:深入解析慢查询、连接池与Druid监控
java·数据库·oracle
三毛20042 小时前
玳瑁的嵌入式日记D33-0908(SQL数据库)
jvm·数据库·sql
Mr_Xuhhh2 小时前
sqlite3的使用
jvm·oracle·sqlite
Jerry&Grj2 小时前
SpringBoot埋点功能技术实现方案深度解析:架构设计、性能优化与扩展性实践
java·微服务·性能优化·springboot·架构设计·埋点技术