Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents

Настройка оперативной памяти

При стриминге в памяти создается и уничтожается много объектов с данными. Поэтому рекомендуется выделять под Java memory heap не менее, чем 1/2 физической памяти сервера. Например, если объем оперативной памяти сервера составляет 32 Гб, рекомендуется выделить 16 Гб при помощи следующих настроек в файле wcs-core.properties

Code Block
languagebash
themeRDark
-Xmx16g
-Xms16g

Настройка сборщика мусора

Важной частью Java VM  является сборщик мусора (Garbage Collector, GS). При запуске сборщик мусора резко увеличивает нагрузку на сервер и может приостановить выполнение остальных задач, поэтому рекомендуется минимизировать его запуски при помощи следующих настроек в файле wcs-core.properties

Code Block
languagebash
themeRDark
#Disable heuristic rules
-XX:+UseCMSInitiatingOccupancyOnly

#Reduce Old Gen threshold
-XX:CMSInitiatingOccupancyFraction=70

# Use System.gc() concurrently in CMS
-XX:+ExplicitGCInvokesConcurrent

# Disable System.gc() for RMI, for 10000 hours
-Dsun.rmi.dgc.client.gcInterval=36000000000
-Dsun.rmi.dgc.server.gcInterval=36000000000

Настройка Concurrent Mark Sweep (CMS) Collector


Сборщик мусора Concurrent Mark Sweep (CMS) предназначен для приложений, которым требуются короткие паузы при сборе мусора и которые могут предоставить ресурсы процессора сборщику мусора, не снизив существенно производительность системы.

...

openjdk version "12.0.2":

Настройка Z Garbage Collector (ZGC) 

Для Java 12 доступна экспериментальная реализации сборщика мусора Z Garbage Collector (ZGC), позволяющая обеспечить низкую задержку при сборке мусора, не останавливая выполнения потоков приложения более чем на 10 миллисекунд, даже при работе с очень большими memory heap. Стоит обратить внимание, что ZGC требует больше ресурсов процессора по сравнению с CMS GC.

...