1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Туториал Оптимизация сервера MC

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем Flait, 22 дек 2021.

  1. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Здравствуйте
    Наверное каждый новичок себе задавал вопрос "А как же оптимизировать моё творение?"
    Статья написана на версию майнкрафта 1.17.1
    В этом гайде вы найдёте ответы на такие вопросы
    • Как оптимизировать мой сервер?
    • Почему низкий тпс?
    Введение в тему
    Что такое тпс? -
    TPS (Ticks per Second)
    это число тактов за секунду. Чем более высокий данный показатель, тем большая производительность сервера. В норме показатель 20.0. TPS может существенно снижаться в случае значительной нагрузки на сервер. И в консоль выводятся такие строчки: [Server thread/WARN]: Can't keep up! Is the server overloaded? Running 9999ms or 9999 ticks behind

    Как посмотреть мой тпс? -
    Чтобы посмотреть тпс введите команду /gc (добавляет плагин Essentials), /tps, /tpsbar.
    Чтобы посмотреть полный список загруженности советую плагин
    Spark -> https://www.spigotmc.org/resources/spark.57242/

    Какой тпс неиграбелен? -
    Показатели тпс
    • 20-18 тпс - Отличный показатель, игроки лагов точно не заметят
    • 18-15 тпс - Играбельно, но уже заметны лаги
    • 14-8 тпс - Неиграбельно, срочно исправляйте это


    Что такое пинг? -
    Ping
    - отражает, сколько времени (в миллисекундах) требуется данным для обработки и перемещения между клиентом и сервером. Чем дальше клиент отдален от сервера, тем больше времени может занять этот перенос. Другими распространенными факторами, влияющими на пинг, являются перегруженные или медленные соединения.

    Если вы хотите уменьшить пинг, то берите сервера ближе к своим игрокам. Москва, франция и т.п

    Какой пинг неиграбелен?
    Показатели пинга
    • 1-100 пинг - Супер, у вас отличный пинг
    • 90-150 пинг - Вполне играбельно, возможны провисания в пвп
    • 200-300 пинг - Неиграбельный пинг, срочно исправляйте это


    Выбираем ядро
    Если у вас нет опыта в создании своего проекта или вы недостаточно опытны вам не нужны форки Paper, в них куча всего и новичок спокойно может запутаться, поэтому для новичков советую Paper (бумага).
    Если у вас есть небольшой опыт в создании серверов используйте форк бумаги Purpur.
    Если на вашем сервере играет больше 60 человек советую сразу задуматся об мультипоточном ядре могу предложить вам ядро SSSpigot (не беслпатное), не пугайтесь за сумму в 1300 рублей, это не много, если хотите качественный проект вкладывайте в него свои денюжки.

    Ссылки на ядра ->
    1. Paper - https://papermc.io/downloads
    2. Purpur - https://purpurmc.org/downloads/1.17.1
    3. SSSpigot - https://www.mc-market.org/resources/14122/

    Оптимизируемые плагины
    Chunky - Позволяет прогрузить мир
    S
    tackMob - В 1 мобе может находится 5 и больше мобов

    Что не нужно использовать
    1 - Никогда не скачивайте что либо с сайтов по типу майнсборки и блекмайнкрафта, даже если там есть слитый плагин и он вам очень нужен ни в коем случае даже не смейте заходить туда. Поверьте легче заплатить за тот-же Vehicles или CMI пару рублей, но иметь чистую сборку без бэкдоров и т.п хаков.
    2 - Никогда не скачивайте уже готовые сборки. Приведу пример для наглядности 1 раз я открыл сервер со скачанной сборкой и мне написал игрок, что он нашел баг или дюп, а я часа 3 думал, а какой плагин за это отвечает, легче создать свою сборку где вы знаете где что находится, а не сидеть потом с мыслями а где это найти, а как это фиксится.
    3 - Не используйте на новых версиях майнкрафта плагины на очистку дропа по типу ClearLagg, всё это уже давно умеет ядро, по поводу того как настроить быстрое удаление дропа смотрите ниже.


    Как понять что нагружает мой сервер?
    Для того чтобы быстро понять что нагружает ваш сервер используйте всего 3 команды в игре
    1. /timings on - и подождать минут 30
    2. /timings report - перейти по ссылке
    3. /timings off
    Если вам так и не понятно что же нагружает ваш сервер создайте тему на форуме и дайте ссылку на тайминги

    Оптимизируем сервер

    Не забывайте что все мы можем ошибаться и я в том числе, ещё прошу не кидаться палками, а лучше распишите, что вам не нравится и я обязательно исправлю это. Помните что настройки вы меняете на свой страх и риск!

    spawn-limits - Вы можете настроить эти параметры, чтобы увеличить или уменьшить количество мобов, появляющихся в вашем мире на одного игрока. Если вы уменьшили здесь цифры то взгляните на настройку mob-spawn-range в spigot.yml, чтобы переместить мобов ближе к игроку

    Оптимизированные значения
    1. animals: 8
    2. monsters: 50
    3. water-animals: 3
    4. water-ambient: 1
    5. ambient: 1
    chunk-gc - Уменьшив это число, ваш сервер будет быстрее выгружать пустые чанки.

    Оптимизированное значение - 400

    autosave - Авто-сохранение.

    Оптимизированное значение: 16000, если сервер каждые 5 минут падает от ваших рук ставьте 12000


    save-user-cache-on-stop-only - Включение этого параметра предотвращает постоянное сохранение пользовательских данных во время работы игроков в сети, что повышает производительность сервера. Однако, если ваш сервер выйдет из строя, пользовательские данные не будут сохранены, поэтому делайте резервные копии.

    Оптимизированное значение: true


    entity-activation-range - Эта группа настроек будет регулировать, насколько близко мобы и другие сущности должны быть, чтобы активировать свой ИИ. Эти числа обозначают расстояние в блоках, которое объекты могут пройти до того, как их деактивируют. Сущности будут повторно активированы, когда игрок подойдет к ним достаточно близко.

    Оптимизированные значения:
    1. animals: 16
    2. monsters: 24
    3. raiders: 48
    4. misc: 8

    merge-radius - Увеличив радиус слияния, предметы и опыт будут собираться вместе чаще, уменьшая количество предметов на земле, тикающих. Если цифры слишком высоки, это может вызвать проблемы, когда предметы будут телепортироваться через блоки, а иногда и в опасные места (например, лаву).

    Оптимизированные значения:
    1. item: 4.0
    2. exp: 6.0


    nerf-spawner-mobs - Для серверов, которые страдают от спавнеров мобов, эта опция обеспечит хороший прирост производительности сервера, сделав мобов, порожденных спавнерами, не имеющими ИИ.

    Оптимизированное значение: true

    mob-spawn-range - Вы можете регулировать расстояние от игрока, который будет порождать мобов, держите это число ниже расстояния просмотра, чтобы мобы действительно появлялись для игроков.

    Оптимизированное значение: 6

    arrow-despawn-rate - Это заставит стрелы, выпущенные игроками в режиме выживания, удаляться быстрее (подсчитывается по количеству тиков), уменьшая количество тикающих сущностей. Рекомендуемые 300 тиков равны примерно 15 секундам.

    Оптимизированное значение: 300

    item-despawn-rate - Это приведет к тому, что предметы, упавшие на Землю, будут отчаиваться после определенного количества тиков.

    Оптимизированное значение: 4000


    max-auto-save-chunks-per-tick - Уменьшив это значение, вы замедлите частоту сохранения чанков, пока ваш сервер сохраняет мир. Рекомендуется не опускаться ниже 8, иначе вы можете столкнуться с тем, что некоторые чанки вообще не сохраняются.

    Оптимизированное значение: 8

    optimize-explosions - Это менее важно по состоянию на версию 1.15, но все же может быть полезно для включения и использования эффективного метода пейпера для обработки взрывов, таких как диинамит или криперы.

    Оптимизированное значение: true

    mob-spawner-tick-rate - Вы можете увеличить количество времени между тиками моба-спавнера без существенных изменений в игровом процессе, но не поднимайтесь намного выше, если только вы не испытываете больших лагов от спавнера.

    Оптимизированное значение: 2

    disable-chest-cat-protections - Это полностью отключит бесполезную механику майнкрафта, которая постоянно проверяет сундуки, чтобы увидеть, сидят ли на них кошки. По умолчанию, если кошки сидят на сундуке, игроки не могут открыть сундук.

    Оптимизированное значение: true

    container-update-tick-rate - Когда инвентарь или сундук открыт, Minecraft обновляет представление каждый тик по умолчанию, чтобы правильно отобразить изменения. Вы можете уменьшить частоту обновления инвентаря, но не поднимайтесь выше 3 или 4.

    Оптимизированное значение: 3

    grass-spread-tick-rate - Увеличив это значение, вы уменьшите частоту попыток сервера перекладывать траву из одного блока в другой.

    Оптимизированное значение: 4

    despawn-range - Эти опции изменят расстояние от игроков, где мобы начнут отчаиваться. "hard "будет депонировать мобов мгновенно, в то время как" soft " начнет периодическую проверку и случайным образом отчаиваться от мобов через определенные промежутки времени.

    Оптимизированные значения:
    1. soft: 28
    2. hard: 96


    hopper-disable-move-event - Это приведет к значительному повышению производительности, так как ваши вагонетки не будут все отмечать каждый слот инвентаря, чтобы увидеть, какие предметы нужно переместить, что резко уменьшит задержку тика.

    Оптимизированное значение: true

    prevent-moving-into-unloaded-chunks - Если игрок каким-то образом попадает в незагруженный чанк, возможно, вызванный лагом в другом месте, это на самом деле увеличит ЛАГ еще больше. Включите эту функцию, чтобы игроки не могли заходить в незагруженные чанки.

    Default: false
    Optimized: true

    use-faster-eigencraft-redstone - Хотя существуют плагины, которые могут изменить способ управления алгоритмом redstone, эта опция, как было показано, значительно повышает производительность без изменения поведения vanilla redstone.

    Оптимизированное значение: true

    armor-stands-tick - Эта функция отвечает за проверку толкает ли вода стойки. Отключив это, вы можете освободить некоторые тиковые действия для других процессов и потерять только незначительную функцию геймплея.

    Оптимизированное значение: false

    per-player-mob-spawns - Вы можете настроить, как мобы появляются в мире, чтобы соответствовать механике ванили и предотвратить игроков с массивными фермами мобов от нарушения игрового процесса других.

    Оптимизированное значение: true

    Оптимизированное удаление дропа
    Найдите в файле paper.yml строку alt-item-despawn-rate: и вставляйте текст только в неё!
    Код:
        alt-item-despawn-rate:
          enabled: true
          items:
            COBBLESTONE: 300
            NETHERRACK: 300
            SAND: 300
            RED_SAND: 300
            GRAVEL: 300
            DIRT: 300
            GRASS: 300
            SANDSTONE: 300
            RED_SANDSTONE: 300
            PUMPKIN: 300
            MELON_SLICE: 300
            KELP: 300
            BAMBOO: 300
            SUGAR_CANE: 300
            TWISTING_VINES: 300
            WEEPING_VINES: 300
            OAK_LEAVES: 300
            SPRUCE_LEAVES: 300
            BIRCH_LEAVES: 300
            JUNGLE_LEAVES: 300
            ACACIA_LEAVES: 300
            DARK_OAK_LEAVES: 300
            CACTUS: 300
            END_STONE: 300
            DIORITE: 300
            GRANITE: 300
            ANDESITE: 300
            SCAFFOLDING: 400
    Строка запуска
    Используйте флаги айкара
    Код:
    Смотрите ниже в ответах
    Подстройте под свои значения озу и своё название ядра.
    Завершение
    На этом всё, я рассказал всё что знал и сам проверял, предоставляйте свои предложения в комментарии!
     
    Последнее редактирование: 23 дек 2021
  2. Overwrite

    Overwrite Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    artcart
    Зачем скопировал статьи спигота?

    Насчет скрипта запуска - обнови инфу, добавив 2 флага. Они на оптимайз не влияют, но они обязаны быть вы сами знаете зачем
    -Dlog4j2.formatMsgNoLookups=true
    -Dcom.sun.jndi.ldap.object.trustURLCodebase=false
     
    Последнее редактирование: 22 дек 2021
  3. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Я скопировал и добавил своё, на спиготе он перевёл англоязычную версию с яндекс переводчика, как думаешь там всё понятно?
     
  4. Overwrite

    Overwrite Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    artcart
    Ну по идее нормально, но инфы к примеру про плагин spark не хватает, многие говорят что он куда более четко показывает инфу чем тайминги
     
  5. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Да я знаю, делал тему в спешке, будет обновляться понятное дело
     
  6. Overwrite

    Overwrite Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    artcart
    Также помимо флагов описанных выше можно вписать еще 1
    -XX:+OptimizeStringConcat
    Не знаю почему айкар его не указал, он есть в куче гайдов и на сайте oracle как полезный
     
  7. Overwrite

    Overwrite Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    artcart
    Стоит также добавить инфу про queue-light-updates, никто её нигде не указывает, но она улучшает поведение света, уменьшая лаги от него. На легаси версиях помогает немного, думаю на новых не лишним будет тоже юзать
     
  8. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Обязательно добавлю, добавил быстрое удаление дропа через ядро в тему
     
  9. MurlikMurlik

    MurlikMurlik Активный участник Пользователь

    Баллы:
    96
    Разве это актуально уже? Везде все починили, где эти строки должны работать?
     
  10. Overwrite

    Overwrite Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    artcart
    Я советую просто юзать, не смотря на обновление библиотек. 2.15 обошли, 2.16 обошли ну его нафиг, пусть будет. Впихнул да забыл
     
  11. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Согласен, легче 1 раз впихнуть да забыть, лучше будет
     
  12. Overwrite

    Overwrite Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    artcart
    Минутка занимательных фактов с гитхата.
    Идеальная строка запуска на 1.17 выглядит так:

    java -server -Xms8G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -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 -XX:-UseBiasedLocking -XX:+EnableJVMCIProduct -XX:+EnableJVMCI -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:UseAVX=2 -XX:+UseStringDeduplication -XX:+UseFastUnorderedTimeStamps -XX:+UseAES -XX:+UseAESIntrinsics -XX:UseSSE=4 -XX:AllocatePrefetchStyle=1 -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+UseCodeCacheFlushing -XX:+UseFastJNIAccessors -XX:+OptimizeStringConcat -XX:+UseCompressedOops -XX:+UseThreadPriorities -XX:+OmitStackTraceInFastThrow -XX:+TrustFinalNonStaticFields -XX:ThreadPriorityPolicy=1 -XX:+UseInlineCaches -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseNUMA -XX:-DontCompileHugeMethods -XX:+UseCMoveUnconditionally -XX:+UseFPUForSpilling -XX:+UseNewLongLShift -XX:+UseVectorCmov -XX:+UseXMMForArrayCopy -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+UseXmmLoadAndClearUpper -XX:+UseXmmRegToRegMoveAll -Dfile.encoding=UTF-8 -Djdk.nio.maxCachedBufferSize=262144 -Dgraal.TuneInlinerExploration=1 -Dgraal.CompilerConfiguration=enterprise -Dgraal.UsePriorityInlining=true -Dgraal.Vectorization=true -Dgraal.OptDuplication=true -Dgraal.DetectInvertedLoopsAsCounted=true -Dgraal.LoopInversion=true -Dgraal.VectorizeHashes=true -Dgraal.EnterprisePartialUnroll=true -Dgraal.VectorizeSIMD=true -Dgraal.StripMineNonCountedLoops=true -Dgraal.SpeculativeGuardMovement=true -Dgraal.InfeasiblePathCorrelation=true -Dlog4j2.formatMsgNoLookups=true -Dcom.sun.jndi.ldap.object.trustURLCodebase=false —add-modules jdk.incubator.vector -jar server.jar nogui

    Спёрто отсюда https://github.com/etil2jz/etil-minecraft-flags
     
  13. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Считай уже поменял
     
  14. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Нельзя больше 15000 символов)
     
  15. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Строка запуска для серверов использующих 12 гб озу и меньше
    Код:
    java -server -Xms8G -Xmx8G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -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 -XX:-UseBiasedLocking -XX:+EnableJVMCIProduct -XX:+EnableJVMCI -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:UseAVX=2 -XX:+UseStringDeduplication -XX:+UseFastUnorderedTimeStamps -XX:+UseAES -XX:+UseAESIntrinsics -XX:UseSSE=4 -XX:AllocatePrefetchStyle=1 -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+UseCodeCacheFlushing -XX:+UseFastJNIAccessors -XX:+OptimizeStringConcat -XX:+UseCompressedOops -XX:+UseThreadPriorities -XX:+OmitStackTraceInFastThrow -XX:+TrustFinalNonStaticFields -XX:ThreadPriorityPolicy=1 -XX:+UseInlineCaches -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseNUMA -XX:-DontCompileHugeMethods -XX:+UseCMoveUnconditionally -XX:+UseFPUForSpilling -XX:+UseNewLongLShift -XX:+UseVectorCmov -XX:+UseXMMForArrayCopy -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+UseXmmLoadAndClearUpper -XX:+UseXmmRegToRegMoveAll -Dfile.encoding=UTF-8 -Djdk.nio.maxCachedBufferSize=262144 -Dgraal.TuneInlinerExploration=1 -Dgraal.CompilerConfiguration=enterprise -Dgraal.UsePriorityInlining=true -Dgraal.Vectorization=true -Dgraal.OptDuplication=true -Dgraal.DetectInvertedLoopsAsCounted=true -Dgraal.LoopInversion=true -Dgraal.VectorizeHashes=true -Dgraal.EnterprisePartialUnroll=true -Dgraal.VectorizeSIMD=true -Dgraal.StripMineNonCountedLoops=true -Dgraal.SpeculativeGuardMovement=true -Dgraal.InfeasiblePathCorrelation=true --add-modules jdk.incubator.vector -jar server.jar nogui
     
  16. Автор темы
    Flait

    Flait Новичок Пользователь

    Баллы:
    21
    Строка запуска для серверов использующих больше 12 гб озу
    Код:
    java -server -Xms16G -Xmx16G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+UnlockDiagnosticVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -XX:G1NewSizePercent=40 -XX:G1MaxNewSizePercent=50 -XX:G1HeapRegionSize=16M -XX:G1ReservePercent=15 -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:InitiatingHeapOccupancyPercent=20 -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 -XX:-UseBiasedLocking -XX:+EnableJVMCIProduct -XX:+EnableJVMCI -XX:+UseJVMCICompiler -XX:+EagerJVMCI -XX:UseAVX=2 -XX:+UseStringDeduplication -XX:+UseFastUnorderedTimeStamps -XX:+UseAES -XX:+UseAESIntrinsics -XX:UseSSE=4 -XX:AllocatePrefetchStyle=1 -XX:+UseLoopPredicate -XX:+RangeCheckElimination -XX:+EliminateLocks -XX:+DoEscapeAnalysis -XX:+UseCodeCacheFlushing -XX:+UseFastJNIAccessors -XX:+OptimizeStringConcat -XX:+UseCompressedOops -XX:+UseThreadPriorities -XX:+OmitStackTraceInFastThrow -XX:+TrustFinalNonStaticFields -XX:ThreadPriorityPolicy=1 -XX:+UseInlineCaches -XX:+RewriteBytecodes -XX:+RewriteFrequentPairs -XX:+UseNUMA -XX:-DontCompileHugeMethods -XX:+UseCMoveUnconditionally -XX:+UseFPUForSpilling -XX:+UseNewLongLShift -XX:+UseVectorCmov -XX:+UseXMMForArrayCopy -XX:+UseXmmI2D -XX:+UseXmmI2F -XX:+UseXmmLoadAndClearUpper -XX:+UseXmmRegToRegMoveAll -Dfile.encoding=UTF-8 -Djdk.nio.maxCachedBufferSize=262144 -Dgraal.TuneInlinerExploration=1 -Dgraal.CompilerConfiguration=enterprise -Dgraal.UsePriorityInlining=true -Dgraal.Vectorization=true -Dgraal.OptDuplication=true -Dgraal.DetectInvertedLoopsAsCounted=true -Dgraal.LoopInversion=true -Dgraal.VectorizeHashes=true -Dgraal.EnterprisePartialUnroll=true -Dgraal.VectorizeSIMD=true -Dgraal.StripMineNonCountedLoops=true -Dgraal.SpeculativeGuardMovement=true -Dgraal.InfeasiblePathCorrelation=true --add-modules jdk.incubator.vector -jar server.jar nogui
     

Поделиться этой страницей