Re: [問題] 想知道java heap預設大小

看板java作者 (資訊苦力)時間14年前 (2012/02/08 23:31), 編輯推噓0(005)
留言5則, 3人參與, 最新討論串3/3 (看更多)
※ 引述《kuro44776 (羽嵐)》之銘言: : 如題 : 最近在跑一個大型的程式 : 但是經常跑到一半就出現 outofmemoryerror : java heap space : 經過爬文 原因似乎是因為jvm的記憶體用盡 : 所以我一口氣把他加到10G : 目前程式還在執行中(希望別再出狀況的) : 但是這一點也因此讓我很好奇 : 他預設的SIZE到底是多大啊??? : 他是會自行決定還是有一個預設值在? : 因為找不到相關的資訊所以才來發問 : 希望可以從這邊知道答案 謝謝 HEAP的大小通常是希望由管理人員指定,但是在我看過的很多案例之中這塊的設定是個 三不管,也就是說系管的不懂他不會去設,開發也不見得會去指定大小,所以常常出問 題。而HEAP分為起始跟最大值,至於最適當的值那得要看您的平台跟JVM廠商。AIX的話 就要注意Native HEAP與Java HEAP的分配。 另一點值得注意的是SUN的JVM有Perm區塊,這塊的起始值很小,大約64M吧!小心不要 爆這邊~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.250.70.198

02/09 11:10, , 1F
爆 PermGen 超麻煩, 正常來說不應該會爆, 會爆的通常找
02/09 11:10, 1F

02/09 11:10, , 2F
不到問題所在 orz...
02/09 11:10, 2F

02/09 14:07, , 3F
可以懷疑 script language 動態生成的 class
02/09 14:07, 3F

02/10 11:48, , 4F
是的,爆Perm通常是class的metadata太多,可以透過設定
02/10 11:48, 4F

02/10 11:49, , 5F
來增加Perm的空間,但是前提是你得要知道是Perm爆掉!
02/10 11:49, 5F
文章代碼(AID): #1FCfLYYS (java)
文章代碼(AID): #1FCfLYYS (java)