OOM分析 gc overhead limit exceeded

今天生產(chǎn)環(huán)境出現(xiàn)Java.lang.OutOfMemoryErrot: GC overhead limit exceeded

網(wǎng)上查了資料這個(gè)錯(cuò)只有在java.lang.OutOfMemoryError: GC overhead limit exceeded(某項(xiàng)操作使用大量?jī)?nèi)存時(shí)發(fā)生)

資料:http://blog.csdn.net/jiandanjinxin/article/details/51740890

好吧放闺,那只能先heapdump下看看到底哪個(gè)沒(méi)有回收

方案一:

重啟前先把修改一下tomcat的啟動(dòng)參數(shù)鞋怀,萬(wàn)一再發(fā)生OOM可以自動(dòng)dump堆棧信息啃洋。

1欢嘿、 在tomcat啟動(dòng)參數(shù)中加入兩個(gè)參數(shù) -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=/export/home/tomcat/domains/server2/oom.hprof

2、 重啟tomcat

參數(shù)說(shuō)明

(1)-XX:+HeapDumpOnOutOfMemoryError 表示當(dāng)JVM發(fā)生OOM時(shí)揩局,自動(dòng)生成DUMP文件毫玖。

(2)-XX:HeapDumpPath=存儲(chǔ)文件/目錄 表示生成DUMP文件的路徑

方案二:

生產(chǎn)系統(tǒng),總不能等著他當(dāng)吧,既然是OOM那就先看下生產(chǎn)上的堆內(nèi)存分配情況

jmap -heap PID


Debugger attached successfully.

Server compiler detected.

JVM version is 25.112-b15

using thread-local object allocation.

Parallel GC with 4 thread(s)

Heap Configuration:

MinHeapFreeRatio? ? ? ? = 0

MaxHeapFreeRatio? ? ? ? = 100

MaxHeapSize? ? ? ? ? ? ? = 2063597568 (1968.0MB)

NewSize? ? ? ? ? ? ? ? ? = 42991616 (41.0MB)

MaxNewSize? ? ? ? ? ? ? = 687865856 (656.0MB)

OldSize? ? ? ? ? ? ? ? ? = 87031808 (83.0MB)

NewRatio? ? ? ? ? ? ? ? = 2

SurvivorRatio? ? ? ? ? ? = 8

MetaspaceSize? ? ? ? ? ? = 21807104 (20.796875MB)

CompressedClassSpaceSize = 1073741824 (1024.0MB)

MaxMetaspaceSize? ? ? ? = 17592186044415 MB

G1HeapRegionSize? ? ? ? = 0 (0.0MB)

Heap Usage:

PS Young Generation

Eden Space:

capacity = 161480704 (154.0MB)

used? ? = 161480704 (154.0MB)

free? ? = 0 (0.0MB)

100.0% used

From Space:

capacity = 229113856 (218.5MB)

used? ? = 82645888 (78.8172607421875MB)

free? ? = 146467968 (139.6827392578125MB)

36.07197287971968% used

To Space:

capacity = 229113856 (218.5MB)

used? ? = 0 (0.0MB)

free? ? = 229113856 (218.5MB)

0.0% used

PS Old Generation

capacity = 1375731712 (1312.0MB)

used? ? = 1375583088 (1311.8582611083984MB)

free? ? = 148624 (0.1417388916015625MB)

99.98919673082305% used

23110 interned Strings occupying 2726400 bytes.

一看內(nèi)存又快完了孕豹,好害怕啊,竟然大部分的堆內(nèi)存都在老年代十气,難道是有線(xiàn)程還沒(méi)結(jié)束励背,導(dǎo)致內(nèi)存無(wú)法釋放,那要再確認(rèn)一下砸西。

jmap -dump:format=b,file=文件名.hprof [pid] ?

jmap的幾個(gè)操作要慎用

dump很占用系統(tǒng)資源叶眉,可能會(huì)引起down機(jī),但是沒(méi)辦法問(wèn)題要查啊芹枷。

然后down到本地衅疙,用mat來(lái)分析,mat的安裝辦法見(jiàn)下:

mat安裝

mat使用

打開(kāi)dump文件一看鸳慈,被一個(gè)填滿(mǎn)了

再看詳細(xì)的信息饱溢,發(fā)現(xiàn)全部是jdbc在取數(shù)據(jù),而且線(xiàn)程還沒(méi)結(jié)束走芋,當(dāng)然回收不了了绩郎,果然是代碼有坑啊。

根據(jù)這個(gè)的數(shù)據(jù)翁逞,找到對(duì)應(yīng)的腳本肋杖,并找到對(duì)應(yīng)的代碼,原來(lái)1000w的數(shù)據(jù)挖函,對(duì)端系統(tǒng)什么條件都沒(méi)帶状植,直接來(lái)查導(dǎo)致內(nèi)存溢出。

后面對(duì)該代碼加上默認(rèn)分頁(yè)怨喘,問(wèn)題解決津畸。

jvm內(nèi)存優(yōu)化:JAVA_OPTS="-server -Xms256m -Xmx512m -XX:PermSize=64M -XX:MaxPermSize=128m"

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市必怜,隨后出現(xiàn)的幾起案子洼畅,更是在濱河造成了極大的恐慌,老刑警劉巖棚赔,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件帝簇,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡靠益,警方通過(guò)查閱死者的電腦和手機(jī)丧肴,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)胧后,“玉大人芋浮,你說(shuō)我怎么就攤上這事。” “怎么了纸巷?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵镇草,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我瘤旨,道長(zhǎng)梯啤,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任存哲,我火速辦了婚禮因宇,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘祟偷。我一直安慰自己察滑,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布修肠。 她就那樣靜靜地躺著贺辰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪嵌施。 梳的紋絲不亂的頭發(fā)上魂爪,一...
    開(kāi)封第一講書(shū)人閱讀 49,007評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音艰管,去河邊找鬼滓侍。 笑死,一個(gè)胖子當(dāng)著我的面吹牛牲芋,可吹牛的內(nèi)容都是我干的撩笆。 我是一名探鬼主播,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼缸浦,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼夕冲!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起裂逐,我...
    開(kāi)封第一講書(shū)人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤歹鱼,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后卜高,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體弥姻,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年掺涛,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了庭敦。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡薪缆,死狀恐怖秧廉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤疼电,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布嚼锄,位于F島的核電站,受9級(jí)特大地震影響蔽豺,放射性物質(zhì)發(fā)生泄漏区丑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一茫虽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧既们,春花似錦濒析、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至斯棒,卻和暖如春盾致,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背荣暮。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工庭惜, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人穗酥。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓护赊,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親砾跃。 傳聞我的和親對(duì)象是個(gè)殘疾皇子骏啰,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 1、jdk 自帶基礎(chǔ)工具 2抽高、MAT 分析dump 3判耕、VM 實(shí)時(shí)監(jiān)控 4 、遇到過(guò)OOM 內(nèi)存溢出有哪些 1翘骂、J...
    smallsun512閱讀 9,888評(píng)論 0 2
  • 前言 在遇到實(shí)際性能問(wèn)題時(shí)壁熄,除了關(guān)注系統(tǒng)性能指標(biāo)。還要結(jié)合應(yīng)用程序的系統(tǒng)的日志碳竟、堆棧信息请毛、GClog、thread...
    Java小鋪閱讀 2,473評(píng)論 0 25
  • 1瞭亮、jdk 自帶基礎(chǔ)工具 2方仿、MAT 分析dump 3、VM 實(shí)時(shí)監(jiān)控 4 、遇到過(guò)OOM 內(nèi)存溢出有哪些 1仙蚜、J...
    多多的大白閱讀 1,107評(píng)論 0 0
  • ## 常見(jiàn)jvm分析工具主要是為了查錯(cuò)和進(jìn)行調(diào)優(yōu) ## 一此洲、CLI 1、jps(java process stat...
    XLMN閱讀 2,591評(píng)論 0 1
  • 堆內(nèi)存設(shè)置 原理 JVM堆內(nèi)存分為2塊:Permanent Space 和 Heap Space委粉。 Permane...
    superxcp閱讀 1,989評(píng)論 0 0