Настройки пространства кучи Tomcat не применяются

Я установил Tomcat 6 в Ubuntu 10.04 и, желая увеличить пространство кучи Java, я пошел в /etc/default/tomcat6 и оставил комментарий и изменил следующую строку:

JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m"

Однако когда я зашел на страницу состояния Tomcat Manager, я прочитал:

JVM
Free memory: 125.29 MB Total memory: 382.43 MB Max memory: 510.43 MB

Итак, я пошел, чтобы проверить мой /etc/init.d/tomcat6 сценарий и добавил echo $TOMCAT_SHнезадолго до start-stop-daemon --start, чтобы проверить, что переменная действительно прошла, и я получил:

# /etc/init.d/tomcat6 start
* Starting Tomcat servlet engine tomcat6
'set -a; JAVA_HOME="/usr/lib/jvm/java-6-openjdk"; source "/etc/default/tomcat6"; CATALINA_HOME="/usr/share/tomcat6"; CATALINA_BASE="/var/lib/tomcat6"; JAVA_OPTS="-Djava.awt.headless=true -Xmx1024m -XX:+UseConcMarkSweepGC -Djava.net.preferIPv4Stack=true"; CATALINA_PID="/var/run/tomcat6.pid"; CATALINA_TMPDIR="/tmp/tomcat6-tmp"; LANG="en_GB"; JSSE_HOME="/usr/lib/jvm/java-6-openjdk/jre/"; cd "/var/lib/tomcat6"; "/usr/share/tomcat6/bin/catalina.sh" start'
...done.

Что выглядит хорошо, так что мне было интересно, почему менеджер Tomcat говорит, что у меня всего 510 МБ максимальной памяти.

Как я могу убедиться, что настройки памяти были применены?

2 ответа

Решение

Я устанавливаю параметры Java в моем файле.profile (прямо в /home/yourUserName/) во всем мире.

Все Java-процессы будут начинаться с этих параметров, если вы запускаете их как текущий пользователь (не sudo)

просто добавь

## set Java Options for the JVM
export _JAVA_OPTIONS="-Xmx1024m -Xms512m -XX:MaxPermSize=256m"

в конец файла.profile,

Другая возможность: поместить экспорт в начало сценария запуска tomcat. должно работать тоже.

т.е.

#!/bin/bash
## set Java Options for the JVM
export _JAVA_OPTIONS="-Xmx1024m -Xms512m -XX:MaxPermSize=256m"

##start Tomcat
/etc/init.d/tomcat6 start

Мы обычно используем JAVA_OPTS и CATALINA_OPTS в конце файла /etc/bash.bashrc. Тогда каждый пользователь имеет доступ к OPTS, а также пользователь tomcat.

Чтобы отслеживать, применяются ли ваши изменения, вы можете использовать 'ps -AfH | grep tomcat'команда, которая отобразит все процессы tomcat, включая их параметры запуска.

Другие вопросы по тегам