Использование флагов Айкара для Minecraft

Last modified on 13 марта 2024 in Minecraft
  • 8 min read
  • 2779
  • 0
Spartak Itskovich

Spartak Itskovich

Game Content Writer

Флаги Айкара

Minecraft title

Это набор конфигураций, влияющих на процесс запуска сервера, предназначенный для оптимизации ядра вашего сервера Minecraft. Любая оптимизация игры и игрового сервера положительно сказывается на их работе, поэтому при наличии различных программ и функций их можно свободно использовать, что положительно скажется на игровом процессе вашего сервера и его поддержке.

СОВЕТ

У вас еще нет своего сервера? Закажите свой сервер Minecraft прямо сейчас.

Как использовать флаги Айкара?

Для активации флагов Айкара необходимо ввести определенные командные строки (скрипт) в параметры запуска. Godlike использует флаги Айкара по умолчанию, поэтому, чтобы настроить параметры "под себя", перейдите в раздел Startup Settings и в строку Additional Startup Parameters, расположенную на игровой панели вашего сервера:

startup settings setup

Введите или отредактируйте эти команды:

-XX: UseG1GC -XX: ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX: UnlockExperimentalVMOptions -XX: DisableExplicitGC -XX: AlwaysPreTouch -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=8M -XX:G1ReservePercent=20 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1MixedGCLiveThresholdPercent=90 -XX:G1RSetUpdatingPauseTimePercent=5 -XX:SurvivorRatio=32 -XX: PerfDisableSharedMem -XX:MaxTenuringThreshold=1 -Dusing.aikars.flags=https://mcflags.emc.gs -Daikars.new.flags=true

ВНИМАНИЕ

Не используйте для этого весь RAM вашего сервера! При установке значений Xms и Xmx, если у вас 8 ГБ памяти, лучше уменьшить Xmx и Xms примерно на 1000-1500 МБ, чтобы избежать истощения памяти или простоя сервера. Мы рекомендуем использовать не менее 6-10, в зависимости от вашего тарифного плана. При желании уточните все вопросы у нашей службы поддержки.

Проблемы с использованием

Если ваши флаги не работают из-за использования старой или другой версии Java, у нас есть решение. Введите эти строки в соответствии с вашей версией Java:

Java 8-10

-Xloggc:gc.log -verbose:gc -XX: PrintGCDetails -XX: PrintGCDateStamps -XX: PrintGCTimeStamps -XX: UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=1M

Java 11

-Xlog:gc*:logs/gc.log:time,uptime:filecount=5,filesize=1M

Объяснение в соответствии с кодом и его использованием

-Xms -Xmx: Параметр -Xms задает начальный размер памяти, которая будет выделена при запуске сервера.
И наоборот, параметр -Xmx задает максимальный объем памяти, который будет потреблять сервер.
UnlockExperimentalVMOptions Параметр, используемый в настройках, который позволяет разблокировать опции, находящиеся в экспериментальном режиме. Необходим для некоторых параметров, перечисленных ниже.
G1NewSizePercent: Если вы установили значение G1NewSizePercent равным 5 %, это означает, что во время запуска вашего сервера 5 % от общего объема памяти, выделенной для работы сервера, будет выделено под новые объекты. Это помогает оптимизировать использование памяти и управление мусором на вашем сервере, потенциально повышая его производительность и уменьшая задержки в работе.
G1MixedGCLiveThresholdPercent: Параметр, который можно настроить, чтобы определить, когда сборщик мусора G1 должен инициировать смешанную (Mixed) сборку мусора. Например, если для параметра G1MixedGCLiveThresholdPercent установлено значение 65 %, это означает, что смешанная сборка мусора будет инициирована, когда объем живых данных достигнет 65 % от общего объема памяти. Установка этого параметра помогает сбалансировать производительность и использование памяти вашего сервера, так как смешанная сборка мусора помогает уменьшить фрагментацию памяти и сократить задержки при операциях сборки мусора. (Подходит для старых версий)
MaxTenuringThreshold=1 Параметр MaxTenuringThreshold позволяет определить, сколько раз объект должен "пережить" процесс сборки мусора в молодом поколении, прежде чем он будет перемещен в старое поколение. Если MaxTenuringThreshold=1, то объекты будут перемещены в старое поколение после их первого прохода через молодое поколение. Это важно, поскольку некоторые объекты, "пережившие" много раундов сборки мусора в молодом поколении, могут быть долгоживущими объектами, которые продолжают использоваться на сервере. Другими словами, MaxTenuringThreshold управляет тем, как долго объекты остаются в молодом поколении перед тем, как перейти в старое поколение.
SurvivorRatio=32: Каждая область Survivor используется для хранения объектов, которые "пережили" одну итерацию сборки мусора в молодом поколении. Обычно молодое поколение делится на две части: Survivor1 и Survivor2. Область Survivor, в которую перемещаются объекты, зависит от того, как долго они прожили в молодом поколении. Параметр SurvivorRatio определяет объем памяти, выделяемый для каждой области Survivor, относительно общего размера молодого поколения. Например, если SurvivorRatio=32, это означает, что каждая область Survivor занимает 1/32 от общего размера молодого поколения. Поскольку мы резко уменьшили MaxTenuringThreshold, мы резко сократим использование пространства Survivor.
AlwaysPreTouch: Когда для AlwaysPreTouch установлено значение true, JVM заполняет всю доступную память сервера, чтобы обеспечить мгновенный доступ к объектам. Однако следует отметить, что использование этого параметра может привести к увеличению времени запуска сервера, особенно если сервер использует большой объем памяти. Это также может потребовать дополнительных системных ресурсов. Поэтому использование этого параметра следует рассматривать только в тех случаях, когда мгновенный доступ к памяти очень важен для производительности сервера. AlwaysPreTouch настраивает и резервирует память в начале процесса, обеспечивая его непрерывность и повышая эффективность. Это повышает скорость доступа к памяти операционной системы. Обязательно используйте Transparent Huge Pages.
+DisableExplicitGC Использование +DisableExplicitGC может быть полезно в случаях, когда сборка мусора вызывается очень часто или в неконтролируемых местах, что может привести к нестабильной работе сервера или большим затратам ресурсов. Он позволяет JVM самостоятельно решать, когда и как часто выполнять сборку мусора, оптимизируя ее для повышения производительности. Однако стоит помнить, что отключение явных вызовов сборки мусора может привести к накоплению мусора в памяти, который может быть не удален вовремя, что приведет к переполнению памяти или увеличению времени, необходимого для решения проблемы сборки мусора в дальнейшем. Поэтому следует тщательно подходить к использованию этого параметра, обеспечивая адекватное управление памятью на вашем сервере.
MaxGCPauseMillis=200 Параметр MaxGCPauseMillis задает максимально допустимое время паузы в миллисекундах во время сборки мусора (Garbage Collection). Его цель - контролировать время паузы, отведенное на операции по сбору мусора, чтобы избежать неприемлемых задержек в работе сервера. Если для MaxGCPauseMillis установлено значение, например 200, это означает, что JVM будет стараться поддерживать время паузы во время сборки мусора не более 200 миллисекунд. Если сборка мусора занимает больше времени, JVM может принять дополнительные меры для сокращения времени паузы, например распределить операции сборки мусора на более короткие интервалы или использовать другие стратегии оптимизации. Однако следует помнить, что уменьшение времени паузы при сборке мусора может привести к увеличению ресурсов, затрачиваемых на саму сборку мусора, поэтому важно тщательно подбирать значение MaxGCPauseMillis, обеспечивая баланс между производительностью и использованием ресурсов.
+ParallelRefProcEnabled: +ParallelRefProcEnabled указывает на включение параллельной обработки ссылок (Parallel Reference Processing). Этот параметр позволяет серверам Minecraft использовать более эффективные методы управления памятью и ресурсами, что может повысить производительность и уменьшить задержки в игре. Включение параллельной обработки ссылок может помочь лучше управлять объектами и памятью, используемой в игре. Это особенно полезно для серверов с большим количеством игроков или большим объемом мира, где эффективное использование ресурсов является залогом бесперебойной работы. Однако включение этого параметра может увеличить использование ресурсов процессора, поэтому рекомендуется тщательно продумать его использование с учетом возможностей и потребностей вашего сервера.
G1RSetUpdatingPauseTimePercent=5 G1RSetUpdatingPauseTimePercent=5 вказує на те, що відсоток часу зупинки, що витрачається на оновлення RSet (Remembered Set), становить 5% під час використання G1 Garbage Collector (G1 GC).
Використання G1 GC з параметром G1RSetUpdatingPauseTimePercent=5 може допомогти зменшити вплив збірки сміття на продуктивність сервера, контролюючи час зупинки, що витрачається на оновлення RSet. Це може допомогти забезпечити плавну роботу сервера та уникнути неприйнятних затримок для гравців.
G1MixedGCCountTarget=4: Установка G1MixedGCCountTarget=4 означает, что G1 GC стремится выполнить четыре смешанные сборки мусора, прежде чем считать этот режим сборки мусора эффективным. По умолчанию - 8. Потому что мы стремимся собирать медленнее, используя меньше старого поколения.
G1HeapRegionSize=8M+: G1HeapRegionSize=8M указывает размер каждой области кучи при использовании сборщика мусора G1 (G1 GC). Область кучи - это часть памяти, на которую JVM делит всю доступную память во время работы с G1 GC. Указав G1HeapRegionSize=8M, вы устанавливаете, что размер каждой области кучи должен составлять примерно 8 мегабайт. Установка размера области кучи в 8 мегабайт является довольно распространенной. Такой размер может быть оптимальным для баланса между производительностью и управляемостью памяти, особенно при большом количестве одновременно активных игроков и объектов в мире.
+PerfDisableSharedMem: +PerfDisableSharedMem указывает, что использование общей памяти для профилирования в реальном времени (real-time profiling) отключено. Отключение параметра PerfDisableSharedMem может быть использовано для повышения производительности сервера, особенно в тех случаях, когда профилирование в реальном времени не нужно или не используется.

СОВЕТ

Вы можете узнать о том , как увеличить RAM и другие возможности для вашего сервера.

Теперь вы знаете о функционале Aikar's Flags и можете использовать его для работы своего сервера Minecraft. Наша команда всегда рада помочь вам по всем вопросам! Играйте вместе с GODLIKE.

Аренда серверов Minecraft

Создай свой сервер

Test 3 days

Оцените статью по 5-бальной шкале

Будь первым, кто оценит эту новость!
Нашли ошибку? Выделите ее и нажмите Ctrl + Enter, чтобы сообщить нам.
Demo
Game
Panel
×

Сообщить об ошибке

Текст ошибки

Ваш вариант