为grails run-app增加Xmx和Xms

Xan*_*ynn 29 grails

我们目前正在处理grails的性能问题.加载我们的主页面大约需要10秒钟.我查看了,看到我们的grails应用程序启动了512内存.我们目前可以使用最多3.5演出的公羊.

我尝试导出以下内容:

export JAVA_OPTS =" - XX:MaxPermSize = 1024m -Xmx1024M -server"

在检查它是如何启动之后,似乎它仍然以512m设置开始.这套在哪里?

fab*_*474 59

Csaba的回答并不准确.

您无需调整startGrails脚本.这是危险的,因为下次升级Grails时,您将失去配置.我甚至没有谈论多个开发人员应该是相同的环境!

解决方案非常简单:

  1. 限定 GRAILS_OPTS="-XX:MaxPermSize=1024m -Xmx1024M -server"
  2. 不要定义 JAVA_OPTS


Csa*_*a_H 7

我假设您使用Linux或其他一些unix变体.

不幸的是,似乎(至少在Grails 1.1.1中)$GRAILS_HOME/bin/startGrails直接设置了一个-Xmx512mJAVA_OPTS(在Windows上,startGrails.bat如果你不提供自己的值,唯一设置这个 - 我想知道为什么unix脚本的行为不同).似乎目前唯一的方法是覆盖此设置startGrails.

注意,以上仅适用于开发.如果将war部署到应用程序服务器,则将使用服务器启动脚本中的内存设置.

更新2010.07.30:正如fabian7474所写,从Grails 1.2.2中你可以GRAILS_OPTS用来指定vm参数,现在它是推荐的方式.