日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java内存配太大导致fullgc_记一次因为短命大对象导致fullGC的问题

發布時間:2024/9/27 java 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java内存配太大导致fullgc_记一次因为短命大对象导致fullGC的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

寫在前面

java內存申請和釋放均是由jvm在控制。而釋放往往會出現各種各樣的問題,經常一個引用沒處理好就引起內存泄漏,最后引發OOM。如果發生在重要業務系統還可能出現嚴重的生產事故。 因此內存使用一定要謹慎,特別是引用要及時斷鏈。雖然jvm有GC(垃圾回收引擎),但只能清理沒有引用的對象,因此對象在不使用時及時置null。當然,筆者對此是很小心的,但萬萬沒想到還是遇到了fullGC(old GC)。

定義

jvm的GC

通常遇到的是堆區內存問題,也就是堆GC。jvm的GC發展到現在也經歷很多發展了,現在主要還是分代回收的思路。

eden space

伊甸園,新生對象放置的地方。

survivor space

在jvm中的被回收過對象仍存活的地方。

old Generation

幸存區被清理后仍活著的對象就步入老年了。 大多數GC問題都在老年代中被發現,筆者遇到的問題也是在這里。

eden 和survivor都屬于新生代,與old gen有明顯差別,也就是這樣決定了java程序不用主動回收也能在較好的狀態運行。 eden和survivor空間相對old generation小很多,這也意味著存放的內存也少很多。jvm一般將長期引用(jvm會將對象分析其引用計數)的對象(多次GC仍存活的)放在Old generation中。

jvm堆區不同區域使用的是不同算法,eden和survivor的GC屬于miniGC,也就是局部GC,特點是速度快,低延遲(1.標記復制算法與空間小的優勢,2.GC時需要將所有線程掛起Stop The World)。而old generation發生GC則為FullGC,且old generation用的是標記整理算法,線程扶起時間會很長。頻繁的fullGC可能是程序設計不合理或內存參數不合理。

言歸正傳

這兩天筆者遇到一個問題導致了fullGC發生。將進程進行dump分析 jmap命令配合工具 MAT(eclipse提供)發現是部分局部變量占用太多空間未及時釋放造成并且占用了55%以上的內存空間。 為什么局部變量還會未及時釋放?查閱源代碼發現所有引用處均未發現被全局對象、靜態對象引用。ArrayList和LinkedList占用內存過高,但也未被全局對象和靜態對象引用。

感覺程序被幽靈附身了!!! 不存在的,直覺告訴我這種問題肯定在自己的程序上。繼續分析果然發現了問題所在:發現對象內的值關聯性非常強,繼續分析最終找到數據庫查詢參數。會不會是數據造成?面對這個疑問diff了最近數據的情況。

蘆山真面目

最近數據量暴增! 數量增加了6倍+,空間增加了3倍+。

由于數據結構和業務邏輯的特殊性將同條件的數據全部查出來處理了,由于數據全是相互存在引用,eden空間無法分配進行了miniGC。miniGC后空間仍然不足,就這樣新生對象直接進入old generation。才生出來就進入老年 >_

解決方案

知道了原因就立即分析得到了解決方案。盡量不要構建局部的大對象!!!因此將DB中查詢出的量控制住,增加中間對象的數量,用完即置null。使得eden中及時GC,old generation增長穩定。 修改程序代碼再將壓一下,發現old generation增長緩下來了,問題解決。

如果遇到類似問題還可以用jconsole和jvisual兩款工具實時監控jvm狀態、對象實例指標等。

不好的消息:jdk9已將jvisual去除,要使用jvisual請使用jdk8。jdk10中jconsole也沒了。。 jmap分析吧。。。

總結

以上是生活随笔為你收集整理的Java内存配太大导致fullgc_记一次因为短命大对象导致fullGC的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 久久精品首页 | 色视频在线观看免费 | 2019中文字幕在线视频 | 在线观看岛国av | 在线看黄网站 | 国产视频xxx | 在线观看理论片 | 久久精品无码人妻 | 69精品一区二区三区 | 日本一区二区在线 | 午夜精品久久久久久久久久久久久 | 欧美中文字幕一区二区三区 | 天天爽夜夜爽夜夜爽 | 国产热视频 | 污污视频在线播放 | 五月激情片 | 亚洲男人第一天堂 | 亚洲不卡av一区二区 | 久久久亚洲国产精品 | 日本亚洲黄色 | 20日本xxxxxxxxx46 欧美激情一级 | 欧美激情二区三区 | 国产高清视频一区 | 日本熟妇乱子伦xxxx | 无码人妻少妇色欲av一区二区 | 人禽l交视频在线播放 视频 | 日日摸天天添天天添破 | 娇小萝被两个黑人用半米长 | 久久激情综合 | av播播| 高清成人免费视频 | 无码国产精品一区二区色情男同 | 亚洲不卡视频 | 激情视频免费观看 | 青娱乐极品视频在线 | 久久老熟女一区二区三区 | 日韩一区二区三区精 | 大象传媒成人在线观看 | 成人av电影在线播放 | 欧美色图日韩 | 欧美日韩国产免费一区二区三区 | 91国内精品野花午夜精品 | 北条麻妃99精品青青久久 | 色爱综合区 | 青青草91| 少妇的被肉日常np | 91在线免费网站 | 亚洲成人中文字幕 | 日韩中文字幕在线观看 | 性色网站 | 日本一区二区人妻 | 一区二区视频免费观看 | 国产精品一区三区 | 国产伦精品一区二区免费 | 日本调教电影 | 国产chinesehd天美传媒 | 先锋资源网av | 国语播放老妇呻吟对白 | 日韩精品成人一区 | 丰满人妻熟妇乱偷人无码 | 亚洲精品乱码久久久久久不卡 | 国产精品视频网址 | 成人毛片在线精品国产 | 久久三| 91视频导航| 在线无码va中文字幕无码 | 日本做受| 四虎最新网址在线观看 | 亚洲区小说区 | 91在线视频播放 | 久久精久久 | av黄色影院 | 亚洲av无码国产精品久久久久 | 国产三级国产精品 | 精品国产一区二区视频 | 久久久久久亚洲av无码专区 | 女王脚交玉足榨精调教 | 亚洲国产精品成人久久蜜臀 | www四虎com| 国产一区二区三区乱码 | av网站在线免费播放 | 精品久久久久久久久久久久久 | 夜夜干夜夜 | 国产一级一区 | 91爱在线观看 | 精品久久久久久中文字幕 | 亚洲女人天堂网 | 催眠调教后宫乱淫校园 | 青青色在线视频 | 国产精品aⅴ | 国产三区在线播放 | 国产精品一国产精品 | 国语一区| 白丝少妇| 一级视频在线观看 | 午夜影院在线看 | 成人一区在线观看 | 草逼视频免费看 | 男人操女人的免费视频 |