我一直在使用Grails开发一个网站并使用Cloudfoundry进行演示。 Grails和Cloudfoundry真棒! STS中的grails插件和工具支持易于使用。
我的应用程序使用MySQL,MongoDB,SpringSecurity等。我只使用了一个用户登录,我定期得到java.lang.OutOfMemoryError: PermGen space
我已经使用grails插件将内存增加到1G。我试图设置JAVA_OPTS来增加内存,这不起作用。
我将研究内存的使用位置,但似乎一个用户和一小组演示数据不应该超出内存限制。
Cloudfoundry是否支持需要更大内存的应用程序?
阅读此post后,我将MaxPermSize设置为512M,不再出现内存不足错误。我在Windows上使用grails cmdline并且我不能获得多个JAVA_OPTS设置,只使用列表中的第一个。 grails cf-env-add JAVA_OPTS "-XX:MaxPermSize=512m -Xms512M -Xmx512M"
这一设置为我的演示网站增加了稳定性。
答案 0 :(得分:3)
原始海报在原始问题中有答案:
阅读this帖子后,我将MaxPermSize设置为512M,我不再出现内存不足错误。我在Windows上使用grails cmdline并且我不能获得多个JAVA_OPTS设置,只使用列表中的第一个。
grails cf-env-add JAVA_OPTS "-XX:MaxPermSize=512m -Xms512M -Xmx512M"
这一设置为我的演示网站增加了稳定性
答案 1 :(得分:0)
这是一个PermGen空间,在这种情况下它只处于开发模式(或者当您使用Tomcat并重新部署您的应用程序几次时,它不是CloudFoundry案例)。
请参阅官方常见问题解答:OMG I get OutOfMemoryErrors or PermGen Space errors when running Grails in development mode. What do I do?