Как увеличить память на Tomcat 7 при работе в качестве службы Windows?
Я пытаюсь запустить Tomcat 7 в качестве службы Windows (XP и Windows 7).
Я вижу места для установки аргументов -Xmx и -Xms jvm в файле catalina.bat, но я не уверен, как это сделать при использовании $CATALINA_HOME/bin/service.bat install service-name. Я огляделся, но лучшее, что я смог найти, это то, что мне нужно было обновить ключ реестра Windows, хотя я не уверен, какой из них нужно редактировать.
Я надеюсь, что там будет более простой способ?
Обновление. Я не использую установщик Windows в основном потому, что я запускаю несколько экземпляров tomcat на одном компьютере, но с разными портами (по причинам, которые я бы предпочел не здесь). Если я смогу использовать установщик с несколькими экземплярами с использованием разных портов, то я хотел бы знать, как, но независимо от того, можно ли увеличить объем памяти на службе windows tomcat без инструментов пользовательского интерфейса, которые поставляются вместе с установщиком?
Ответы
Ответ 1
Предположим, что вы загрузили и установили Tomcat в качестве файла exe файла установщика Windows с домашней страницы Tomcat, затем проверьте значок пера Apache в systray (или, если нет, запустите Monitor Tomcat из меню "Пуск" ). Дважды щелкните значок пера и перейдите на вкладку Java. Там вы можете настроить память.
![enter image description here]()
Перезапустите службу, чтобы изменения вступили в силу.
Ответ 2
Ответ на мой вопрос, я думаю, для использования tomcat7.exe:
cd $CATALINA_HOME
.\bin\service.bat install tomcat
.\bin\tomcat7.exe //US//tomcat7 --JvmMs=512 --JvmMx=1024 --JvmSs=1024
Кроме того, вы можете запустить инструмент пользовательского интерфейса, упомянутый BalusC, без системного трея или с помощью установщика с tomcat7w.exe
.\bin\tomcat7w.exe //ES//tomcat
Дополнительная заметка:
Установка параметров -JvmXX (через инструмент пользовательского интерфейса или в командной строке) может быть недостаточной. Вам также может потребоваться явно указать значения памяти JVM. В командной строке это может выглядеть так:
bin\tomcat7w.exe //US//tomcat7 --JavaOptions=-Xmx=1024;-Xms=512;..
Будьте внимательны, чтобы не переопределить другие значения JavaOption. Вы можете попробовать обновить bin\service.bat или использовать инструмент пользовательского интерфейса и добавить параметры java (отделить каждое значение с новой строкой).
Ответ 3
//ES/tomcat
→ Это может не сработать, если вы изменили имя службы во время установки.
Либо запустите команду без имени службы
.\bin\tomcat7w.exe //ES
или с точным именем службы
.\bin\tomcat7w.exe //ES/YourServiceName
Ответ 4
В соответствии с настройками catalina.sh всегда следует входить в свой собственный setenv.sh(или setenv.bat соответственно), например:
CATALINA_OPTS='-Xms512m -Xmx1024m'
Я предполагаю, что setenv.bat также будет вызываться при запуске службы. Возможно, я ошибаюсь, так как я не пользователь Windows.
Ответ 5
Если вы используете пользовательскую именованную службу, вы должны увидеть два исполняемых файла в каталоге Tomcat/bin
В моем случае с Tomcat 8
08/14/2019 10:24 PM 116,648 Tomcat-Custom.exe
08/14/2019 10:24 PM 119,720 Tomcat-Customw.exe
2 File(s) 236,368 bytes
Запуск завершенного "w" исполняемого файла позволит вам настроить Xmx на вкладке Java
![enter image description here]()
Ответ 6
Для Tomcat 7 для увеличения памяти:
Определите имя вашей службы, вы найдете его в свойствах службы, в разделе "Путь к исполняемому файлу" в конце строки
Для меня это //RS//Tomcat70, поэтому имя Tomcat70
Затем напишите от имени администратора:
tomcat7.exe //US//Tomcat70 --JvmOptions=-Xmx1024M