Настройки опций Apache Tomcat Java
Обязательные настройки
Настройка
Описание
-server
Предписывает JVM запуск в режиме сервера. Значение по умолчанию - true, если используется 64-разрядный пакет JDK, но рекомендуется объявить это значение.
-d64
Предписывает JVM запуск в 64-разрядном режиме. Текущая JVM автоматически это обнаруживает, но рекомендуется объявить это значение.
-XX:+UseG1GC
Указание JVM использовать сборщик мусора Garbage First Garbage Collector.
-Dfile.encoding=UTF-8
Указание JVM использовать UTF-8 в качестве набора символов по умолчанию, чтобы незападноевропейские алфавиты отображались правильно.
-Djava.library.path
Указывает путь к собственной библиотеке.
-Xms3072m (для системы с 4 ГБ памяти)
Указание JVM выделять минимум 3072 МБ памяти для процесса Tomcat. Это значение должно быть задано равным 75 % доступной системной памяти.
* 
Объем памяти должен быть настроен в соответствии с фактической средой.
-Xmx3072m (для системы с 4 ГБ памяти)
Указание JVM ограничивать максимальную память для процесса Tomcat. Это значение должно быть задано равным 75 % доступной системной памяти.
Вещи, которые необходимо учитывать:
Объем памяти должен быть настроен в соответствии с фактической средой. 5 ГБ памяти - подходящее начальное значение для 100 000 вещей.
Причина делать равными минимальный и максимальный объемы памяти заключается в том, чтобы у JVM не было необходимости повторно вычислять требуемую память и изменять назначенный размер во время выполнения. Хотя рекомендуется использовать этот объем для размещенных и/или общедоступных сред, для сред разработки и тестирования будет достаточно использовать –Xms512m. Кроме того, убедитесь, что оставлено достаточно памяти, чтобы операционная система могла функционировать.
-Dlog4j2.formatMsgNoLookups=true
Дополнительные настройки для включения JMX для VisualVM или JConsole
Настройка
Описание
-Dcom.sun.management.jmxremote
Уведомляет JVM о планируемом удаленном мониторинге ее с помощью JMX
-Dcom.sun.management.jmxremote.port=22222
Порт, который JVM должна открыть для мониторинга.
-Dcom.sun.management.jmxremote.ssl=false
Без использования SSL.
-Dcom.sun.management.jmxremote.authenticate=false
Аутентификация не требуется.
-Djava.rmi.server.hostname=<host or IP>
Имя хост-компьютера или IP-адрес, который будет использовать для подключения клиент RMI.
Было ли это полезно?