Рекомендуемые JVM-опции для DataGrid#
Ниже приведен минимальный рекомендуемый набор опций для корректной работы DataGrid.
Применение указанных опций позволяет улучшить производительность и стабильность работы продукта.
JVM-опции, которые применяются к OpenJDK 11 и 17#
Параметр |
Описание |
|---|---|
|
Максимальный размер Heap |
|
Начальный размер Heap (в общем случае выбирается равным |
|
Активация assertions |
|
Включение серверного режима в JVM |
|
Сборка в young-поколении перед Full GC |
|
Инициализация памяти при аллокации Heap |
|
Включение возможности использования дополнительных отладочных опций |
|
Использование протокола IPv4 |
|
Используется для указания политики кеширования, успешного резолвинга DNS. Значение указывается как целое число для последующего указания количества времени в секундах, которое необходимо для кеширования успешного поиска. |
|
Остановка JVM при событии |
|
Снятие |
|
Путь к |
|
Путь к |
|
Переопределение временной директории в JVM |
|
Указание порта для JMX |
|
Включение аутентификации для подключения к JMX |
|
Включение SSL для JMX-соединений |
|
Путь к файлу конфигурации JMX |
|
Задает кодировку по умолчанию |
|
Снижает вероятность возникновения GC-паузы при работе внутренних механизмов профилирования |
|
Включение экспериментальных параметров JVM |
|
Включение вывода стек-трейсов для определенной группы исключительных ситуаций |
|
Включение логирования JVM |
|
Использование сборщика мусора Shenandoah |
|
Количество записей в последнем отчете safepoint |
|
Активирует JFR и определяет основные параметры его работы |
|
Задает дополнительные параметры работы JFR |
|
Настройка log-файла GC, детализация, ротация |
|
Настройка log-файла safepoint, детализация |
|
Задает размер young-поколения в процентах |
|
Выводит в log-файл статистику по safepoint-паузам |
|
Выводит в log-файл информацию о потоках, у которых |
|
Если |
|
Устанавливает максимальный размер young-региона. Задается в процентах от размера Heap. Используется для настройки производительности в высоконагруженных проектах |
|
Устанавливает заполненность Heap в процентах, с которой начинается сборка мусора |
|
Отключение Adaptive IHOP (автоматическое определение оптимального IHOP по процессу маркировки) |
|
Устанавливает размер региона для GC G1 |
|
Вспомогательный идентификатор для различных интеграций |
|
Вспомогательный идентификатор для различных интеграций |
|
Задает путь к файлу |
|
Вспомогательный идентификатор для различных интеграций |
|
Для интеграции с конфигуратором |
|
Для интеграции с конфигуратором |
|
Для интеграции с конфигуратором |
|
Включение JMX |
|
WA к уязвимости старых Log4j2 |
JVM-опции, которые применяются к OpenJDK 11#
Параметр |
Описание |
|---|---|
|
Позволяет получать доступ к публичным полям и методам пакета в runtime |
|
Позволяет получать доступ к публичным полям и методам пакета в runtime |
|
Позволяет получать доступ к публичным полям и методам пакета в runtime |
|
Позволяет получать доступ к публичным полям и методам пакета в runtime |
|
Позволяет получать доступ к публичным полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Отключение Biased Locking. Оптимизация неэффективная для сценариев с низкими задержками (low-latency) |
JVM-опции, которые применяются к OpenJDK 17#
Параметр |
Описание |
|---|---|
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
|
Позволяет получать доступ ко всем (не только к публичным) полям и методам пакета в runtime |
JVM-опции, которые применяются к DataGrid#
Параметр |
Описание |
|---|---|
|
Параметр сокращает используемый размер heap при большом количестве объектов за счет уменьшения хранимой истории аффинити-функции |
|
Имя кластера |
|
Тип кластера |
|
Параметр включает вывод дополнительной диагностики в Ignite, выключаем дополнительный вывод в некоторых случаях может оказать дополнительное негативные влияние и усугубить проблему |
|
Eсли установлено значение true, метрики кеша не включаются в сообщение discovery об обновлении метрик (в этом случае сообщение содержит только кластерные метрики) |
|
Включает создание дампа потоков при появлении критической ошибке на узле, выключаем дополнительный вывод в некоторых случаях может оказать дополнительное негативные влияние и усугубить проблему |
|
Включает расширенное логирование создания/перестроения индексов |
|
Установка параметра в true приведет к тому, что клиентские узлы, которые не были доступны с любого из серверных узлов через communicationSpi, будут выведены из топологии кластера |
|
Параметр устанавливает размер истории PME |
|
IGNITE_HOME |
|
Параметр управляет добавлением хеш-кода загрузчика классов к имени MXBean. При установленном значении true к имени MXBean будет добавлен хеш-кода загрузчика классов, что помогает избежать конфликтов имен при работе с несколькими экземплярами Ignite в одной JVM |
|
IGNITE_PROG_NAME |
|
Включает или выключает расширенный режим логирования, значения, которые может принимать true/false |
|
Параметр управляет возможностью повторного использования памяти при деактивации узла |
|
IGNITE_SUCCESS_FILE |
|
Включает или выключает запись в лог информации, которая может содержать в себе конфиденциальные данный, значения, которые может принимать true/false |
|
Если параметр установлен в false, то DataGrid не будет выполнять проверки наличия новых версий программного обеспечения |
|
Если у свойства установлено значение |
|
Включение дополнительных проверок LocalDeploymentSpi. Необходим в редких кейсах наследников classloader |
JVM-опции только для клиентских узлов, которые применяются к OpenJDK 17#
Параметр |
Описание |
|---|---|
|
Включение инициализации прокси-кешей на клиентском узле во время его запуска |
Вендорозависимые JVM-опции#
Openjdk#
Параметр |
Описание |
|---|---|
|
При запуске JVM, JFR будут записываться на диск. Параметрами можно регулировать глубину хранения и детализацию JFR |
|
Указывает, куда помещать записанные JFR и задает размер chunk |
Опции GC для Openjdk Java 11#
Параметр |
Описание |
|---|---|
|
Настройка log-файла GC, детализация, ротация |
|
Настройка log-файла safepoint, детализация, ротация |
Настройка стабильной топологии (PROP_STABLE_TOPOLOGY)#
В in-memory-кластерах смена паролей от учетных записей DataGrid с помощью REST возможна, только если настроена стабильная топология. Она задается с помощью JVM-опции.
-DPROP_STABLE_TOPOLOGY="consistID1,consistID2,...,consistIDN"
где consistID1,consistID2,...,consistIDN — согласованные идентификаторы (consistent ID) узлов, которые составляют стабильную топологию.
Важно
На всех узла кластера с помощью опции PROP_STABLE_TOPOLOGY должны передаваться одинаковые списки consistent ID. Узлы, на которых списки будут отличаться, не войдут в тополгию.