内存不足错误,即使未完全使用堆内存

时间:2019-02-12 13:55:11

标签: java jvm glassfish heap-memory glassfish-4

我正面临

  

java堆空间中的内存不足错误

我正在使用glassfish服务器部署基于Maven的应用程序,而Java JDK是1.7。 我已经将glassfish服务器domain.xml配置为MaxPermSize为512M,Xmx为1024M,如快照1所述,我很困惑,因为我的glassfish没有充分利用1GB的堆大小,它仅消耗了300m的最大堆,但是以上错误并弯腰了一切。 我该如何解决这个问题?每天发生两次。

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:0)

-XX:NewRatio = 2表示:

old generation size : young generation size = 2:1

因此年轻代大小为1024/3 = 341M。 这意味着:

Eden size + 2*Survivor = 341M

伊甸园的大小约为300M。

您应该将Xmx设置为更大。