Увеличение Xmx и Xms для Grails Run-App - PullRequest
29 голосов
/ 11 августа 2009

В настоящее время у нас проблемы с производительностью Grails. Загрузка одной из наших главных страниц занимает около 10 секунд. Я проверил и увидел, что наше приложение Grails запускается с 512 памяти. В настоящее время мы можем использовать до 3,5 Гб оперативной памяти.

Я попытался экспортировать следующее:

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

После проверки того, как он запустился, кажется, что он все еще запускается с настройкой 512 м. Где этот набор?

Ответы [ 2 ]

59 голосов
/ 29 июля 2010

Csaba ответ не точный.

Вам не нужно настраивать скрипт startGrails. Это что-то опасное, так как в следующий раз, когда вы обновите Grails, вы потеряете свою конфигурацию. Я даже не говорю о среде, которая должна быть одинаковой для нескольких разработчиков!

Решение довольно простое:

  1. Определить GRAILS_OPTS="-XX:MaxPermSize=1024m -Xmx1024M -server"
  2. Не определять JAVA_OPTS
7 голосов
/ 11 августа 2009

Я предполагаю, что вы используете Linux или какой-либо другой вариант Unix.

К сожалению, кажется, что (по крайней мере в Grails 1.1.1) $GRAILS_HOME/bin/startGrails напрямую устанавливает значение -Xmx512m в JAVA_OPTS (в Windows startGrails.bat устанавливает его только в том случае, если вы не предоставите свое собственное значение - Интересно, почему скрипт Unix ведет себя иначе). Кажется, что в настоящее время единственный способ переопределить этот параметр в startGrails.

Обратите внимание, что вышесказанное верно только для разработки. Если вы развернете войну на сервере приложений, будут использованы параметры памяти в скрипте запуска сервера.

Обновление 2010.07.30 : как пишет fabian7474, из Grails 1.2.2 вы можете использовать GRAILS_OPTS для указания параметров vm, и теперь это рекомендуемый способ.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...