JVM中FGC和YGC分析

1. YGC和FGC说明:

YGC :对新生代堆进行gc。频率比较高,因为大部分对象的存活寿命较短,在新生代里被回收。性能耗费较小。

FGC :全堆范围的gc。默认堆空间使用到达80%(可调整)的时候会触发fgc。以我们生产环境为例,一般比较少会触发fgc,有时10天或一周左右会有一次。

2. YGC和FGC执行时机:

a.edn空间不足,执行 young gc

b.old空间不足,perm空间不足,调用方法System.gc() ,ygc时的悲观策略, dump live的内存信息时(jmap –dump:live),都会执行full gc。

3,JVM内存空间设置:

JVM内存设置越大,fgc耗时越长,并非越大越好。一般JVM配置的内存越想,fgc时间越短,1G>2G>3G。

4,GC影响:

GC耗时太长、GC次数太多会影响进程的性能,导致进程响应变慢,或者无法响应。

FGC正常次数:越少越好。比较正常情况几个小时一次、或者几天才一次。

FGC耗时:耗时很长会导致线程频繁被停止,使应用响应变慢,比较卡顿。

YGC耗时:耗时在几十或者几百毫秒属于正常情况,用户几乎无感知,对程序影响比较少。耗时太长或者频繁,会导致服务器超时问题。

YGC次数:太频繁,会降低服务的整体性能。高并发服务时,影响会比较大。

5,FGC

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值