JVM的FullGC优化实战(一)

城市站项目出现频繁FullGC导致服务报警,通过内存分析发现80%内存被StandardManager占用,疑似Session管理问题。调整Session超时时间至3分钟,减少FullGC频率,但问题未彻底解决,后续将继续优化。
摘要由CSDN通过智能技术生成

今天我们的城市站项目(city-web)在早上9点钟出现了多次FullGC,导致网站报警严重。如下图示

    从上图可以看到,FullGC非常频繁,一分钟之内达到20多次,这种情况下几乎等于程序宕机,因为在FullGC的时候,几乎无法对外提供服务。通过监控视图也证明了这一点:

    从上图可见,我们的项目是6台集群,“假死”了四台,都是因为FullGC的原因,当然“假死”一会儿后,也会随着FullGC的结束再次“活”过来。

    同时,老年代对象表现的非常糟糕,GC以后,立马再涨上来。说明程序中对老年代对象的对象的控制出现了问题。

于是我们让运维dump了当时的内存city.hprof,用eclipse的Memory Analyzer Tool打开分析内存,分析结果是:

    接着点击Leak Suspects链接,查询具体的内存分析报表:

<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值