Статья написана для версии 1.17, но подойдет для 1.18+

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

¶ Предупреждение

Эта статья основана на версии 1.17.1 с ванильными ядрами. Если у вас моды — мы не думаем, что вы нашли подходящее руководство. Также, обратите внимание на то, что результаты стабильности и корректной работоспособности сервера после оптимизации может отличатся в разных случаях. Если вы уверены, что была допущена ошибка или тут чего-то нехватает — пожалуйста, отпишите нам.

¶ Начало

¶ Моментальная оптимизация

Делайте регулярные перезапуски сервера, например каждый день.
Так как это освобождает мусор из ОЗУ, отгружает чанки и сохраняет карту. Это как минимум делают крупные сервера, несмотря на uptime

Я захватил ЭКОНОМИКУ Сервера Майнкрафт с помощью Этой КИРКИ!

¶ TPS — что это

TPS — сокращение от Ticks per Second — это число тактов за секунду. Чем выше данный показатель, тем большая производительность сервера. В среднем это значение варьируется от 19.8 до 20.0. Вы можете прописать /tps и посмотреть на цифры. У вас ниже 19.5 TPS?

Сервер подлагивает.

¶ Server.jar — ядро

Выбор ядра — очень важная вещь при сборке вашего сервера. Ядро напрямую влиет на производительность сервера. На данный момент существуют несколько ядер, которые мы советуем использовать, но есть и те, от которых вам категорически нужно отказаться.

  • Airplane — стабильное и довольно популярное ядро, набирающее обороты среди серверов. Поддерживается опытными разработчиками, патчи делают очень быстро. Форк Paper.
  • Patina — новое, качественное ядро. Мои тесты длились около 14 дней и можно сделать один вывод — эта штука очень быстрая, но у меня нет особого доверия к этому ядру, так как оно только разрабатывается и недавно появилось на свет. Из минусов, исключает опрессора и подобные вещи связанные с багами. Если вы желаете иметь ванильный сервер — ставить его не имеет смысла
  • Purpur — ядро проверено временем. Хорошее мнение со стороны многих администраторов серверов, но оперативной памяти будет использовать больше, чем вышеперечисленные ядра.
  • Paper — форк Spigot. Самое популярное ядро в мире, и стабильное.
  • Yatopia — Ядро больше не поддерживается и было заброшено.
  • Sugarcane — Yatopia 2.0. Хоть оно и разрабатывается, но содержит патчи от Yatopia.
  • Bukkit/Spigot — эти ядра морально устарели. Их использовать категорически запрещено (если вы не мазохист, конечно же).
  • Sponge (для модов и sponge-плагинов) — Во-первых стабильности никакой нет, а во-вторых ограничение в плагинах: можно ставить только плагины для этого ядра, хотя есть ядро Magma, которое может поддерживать и плагины и моды одновременно.

Пожалуйста, остерегайтесь других ядер! В 99.99% случаев это лишь название. Ваш сервер и его данные могут пострадать.

САМЫЙ БЫСТРЫЙ И УДОБНЫЙ ТРЕЙДХОЛЛ | МайнШилд 3

¶ Добавление сборщика мусора

Сборщик мусора обязательно должен стоять в каждом сервере, так как Java очень любит кушать оперативную память, но очищает её плохо.

Если вы используете наш хостинг, действий принимать не требуется, в иных случаях вам нужно вставить -XX:+UseSerialGC в строку запуска. По нашим тестам, этот сборщик оказывается лучше, чем тот, который применён в флагах Aikar’а.

java -Xmx2G -Xms16G -XX:+UseSerialGC -jar airplane.jar nogui

¶ Прогрузка карты

Прогрузите карту с помощью плагина Chunky. Станьте на нулевые координаты карты и введите эти команды поочерёдно: /chunky center , /chunky radius 3000 , /chunky start . Готово! Теперь вам нужно подождать некоторое время, пока плагин прогрузит 3000 блоков, которые мы задали во второй команде. Желательно ограничить свой мир до 3-6 тыс. блоков.

Поверьте, такого количества блоков будет вполне достаточно, чтобы всем было приятно играть. Если нужно увеличить размер карты до более высоких значений — вместо 3000 напишите своё число.

Есть и другой плагин для прогрузки карты — WorldBorder, если вам надо.

¶ Плагины

Никогда не ставьте плагины, которые заявляют, что они оптимизируют ваш сервер или плагины, которые изменяют генерацию мира. ClearLagg и ему подобные создают фатальные лаги.

Читайте также:  Как сделать ноутбук в майнкрафте без модов

Ссылки на плагины, которые действительно оптимизируют сервер: ServerBooster, MFM.

Плагины, автоматически сохраняющие мир — не имеют смысла. Multiverse Core замените на BungeeCord — систему (ядро), которая позволяет связывать несколько серверов между собой. Также, скачивать плагины нужно только с этих сайтов: spigotmc.org, dev.bukkit.org. В целях безопасности вашего-же сервера, не ищите ресурсы в других местах.

И ещё: советуем не засорять свой сервер изрядным количеством плагинов. Чем больше плагинов, тем больше нагрузка на сервер. Добавьте столько плагинов, чтобы вашим игрокам было приятно играть. Согласитесь, когда вы видите перед собой текст в боссбаре, скорборде, в автоматических сообщениях в чате, а уж тем более надписи на весь экран, желание уйти с этого сервера возрастает до 100%, не так ли? Административные плагины, которые используются раз в никогда — советуем удалить, различные дополнения, которыми мало кто будет пользоваться — советуем удалить, ненужные плагины просто удаляйте.

¶ Конфигурации сервера

¶ server.properties

view-distance — дистанция прогрузки чанков. Если на сервере много игроков и лаги происходят из-за чанков — снижайте этот параметр до 4-5 чанков. 6 чанков вполне достаточно для ванильного выживания.

view-distance=6

¶ bukkit.yml

spawn-limits — параметр, который отвечает за изменение количества мобов на одного игрока. Эти ограничения применяются только к животным или монстрам в загруженных чанках. Если вам не нужны летучие мыши — ambient ставьте на 0.

monsters: 25, animals: 8, water-animals: 2, water-ambient: 1, ambient: 1

period-in-ticks — чем меньше, тем быстрее сервер будет выгружать пустые чанки. Если на вашем сервере играет больше 60 человек, желательно опустить этот параметр до 350.

period-in-ticks: 400

autosave — если у сервера стоит HDD накопитель, вам придётся страдать от лагов из-за автоматического сохранения. Вы должны иметь SSD накопитель для нормальной работы сервера. Поднимите значение до 12000 для комфортной игры. Кстати, если у вас стоит плагин на автосохранение мира — удалите его, используйте этот параметр, он ничем не хуже.

autosave: 12000

¶ spigot.yml

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

Изменяйте этот параметр на свой страх и риск!

save-user-cache-on-stop-only: true

entity-activation-range — это группа параметров, которая регулирует, насколько близко животные и мобы должны находиться к вам, чтобы активировать свой ИИ. Числа обозначают расстояние в блоках. Если вы выйдите из «зоны активации ИИ» — мобы не будут двигаться, подойдёте обратно — включат свой ИИ. Вот так это всё и работает.

animals: 16 monsters: 24 raiders: 48 misc: 8

mob-spawn-range — этот параметр регулирует радиус спавна мобов возле вас. Значение должно быть на единицу меньше от кол-ва чанков, которое вы выставили.

mob-spawn-range: 5

¶ paper.yml

max-auto-save-chunks-per-tick — параметр замедляет частоту сохранения чанков. Не опускайте значение ниже 12, иначе некоторые чанки могут не сохраниться вообще.

max-auto-save-chunks-per-tick: 12

mob-spawner-tick-rate — тики моба, вызванного спавнером. Не поднимайте значение выше.

mob-spawner-tick-rate: 2

prevent-moving-into-unloaded-chunks — если игрок каким-то образом попал в незагруженный чанк — он постоянно будет проваливаться вниз (в пустоту), а когда сервер прогрузит чанки, он может с ним сыграть в злую шутку, не телепортировав игрока обратно. Игрок может просто умереть в пустоте. Чтобы такого не произошло, нужно включить данный параметр.

prevent-moving-into-unloaded-chunks: true

armor-stands-tick — выключив данный параметр, сервер не будет проверять стенды для брони.

armor-stands-tick: false

¶ Заключение

После того, как вы проделали всё, что было написано в данной статье — проверьте стабильность и производительность сервера. Не лагает ли он?

Для этого вам необходимо прописать эти команды: /mspt , /tps . Если после запуска сервера прошло 5-10 минут и максимальная цифра в mspt не превышает 150.0, а TPS варьируется в районе 19.8-20.0 — отлично, вы оптимизировали свой сервер. Поздравляю!

¶ Сервер продолжает лагать. Что делать?

Скорее всего, вы либо что-то неправильно сделали, либо пропустили какой-то пункт из статьи. Если сервер продолжает лагать даже после оптимизации — время задуматься о деньгах, ибо вам нужно покупать больше мощностей.

Источник: docs.pterohost.com

Читайте также:  Что такое заурядное зелье в Майнкрафте

Mspt что это minecraft

Вы можете использовать поиск на странице в браузере для поиска на странице

  • На Windows: Ctrl + F
  • На мобильных устройствах: Меню браузера → Поиск
  • На macOS: Cmd + F

TPS (сокращение от английского Ticks per Second) — количество тактов в секунду.

Чем выше этот показатель, тем производительнее работает сервер.

Нормальный показатель TPS в игре и на сервере — 20.0.

MSPT (сокращение от английского Milliseconds per Tick) — время обработки тактов

Чем ниже этот показатель, тем производительнее работает сервер.

Нормальный показатель MSPT в игре и на сервере — не превышает 50.0.

FPS (сокращение от английского Frames per Second) — количество кадров за секунду.

Чем выше этот показатель, тем «плавнее» сменяется изображение на экране.

Чанк (от английского chunk) — единица пространства игры.

Размеры одного чанка — 16 блоков шириной, 16 блоков длиной и от самого низа до самого верха мира.

Гуси — самодвижущиеся аппараты на блоках слизи.

АБ

Таб

Таб — это экран, отображающийся при нажатии на кнопку Tab на клавиатуре.

На этом экране отображается список игроков, а также базовая информация о сервере, на котором вы находитесь: название, онлайн

Баджи

Баджи — это альтернативное название значков, от английского слова «badges», которое и переводится как «значки»

Пункты

Сервер является частью сети серверов DreamMC

Источник: dreammc.su

TPS — значения

/tps — это разрешенная команда для всех игроков без исключения, отслеживающая и показывающая нагрузку на сервер.
Команда /tps выводит информацию примерно таком виде:

Важно: тпс белым цветом в тексте выдается ровно на момент запроса игрока. Сервер делает сбор информации и выдает тпс ровно в ту секунду, в которую был запрошен ТПС. Это НЕ средний тпс, это тпс прямо_щаз.

ВАЖНО-2: если число тпс = 20, и тактов на каждого игрока меньше 2-3 — можете не смотреть то, что под чертой и на английском, оно уже не нужно.

Пояснения:
Dim3 (и куча других Dim) — это значение ТПСа для этого мира/сервера. На квантуме их достаточно много. Да, они могут (и должны) различаться друг от друга)

SbS7alIeFAAistg_q2B67sdjUTlxmD4aN2DwJBB5-6FNNxpJ0Ejtsv9NT9GDdxiJjLj-drh4Mdef2q9eNsGOj1tK.jpg

Они так же есть на Руне, могут называться по другому.
Значение такта меньше 1 (как на скрине) и тпс 20 — нормально для мира, в котором нет ни одного игрока.

Dim0 — Это основной мир, тот в котором проходит ваша основная игра.

Значение такта, равное 1-2 мс, и ТПС=20 — идеальное значение для сервера с 1 игроком.
Каждый игрок берет себе примерно 2 мс, активно двигающийся игрок — около 3ех.
Игроки, находящиеся в одном чанке — могут делить между собой число тактов (так как чанки прогружаются сервером в одном месте):
например находящиеся на спавне 3 игрока вполне могут выдавать число тактов = 3-4 мс (вместо 6).
Если чисто тактов превышает 2-3 мс на игрока постоянно, то у вас что-то лагает. Стоит сообщить администратору.

Overall — это общий тпс для всего сервера. ТО есть взяли все замеры и соединили в одну кучу.

Число тактов в нем равно ВСЕМ тактам, которые обрабатывает сервер во всех мирах (поэтому оно всегда больше, чем ДИМ0).
Так же в него входит обработка пермишенсов и другие задачи сервера, которые не относятся к игровым мирам.

0.054 ms (Dim X) — это сколько времени нужно серверу, чтобы выполнить все задачи, которые должны выполняться за 1 тик. Должно быть меньше 50. Оптимально для левых ДИМов меньше 20. 50ms = 1 тик. Для Dim0 — должен быть меньше 50, оптимально меньше 40.
10.905 ms (Overall) — это общее значение ms для всего сервера. Обычно сильно отличается от всего димов вместе взятых, даже если сложить, так как в это значение входят еще и те задачи для сервера, что выполняются вне миров (пермишенсы например).
TPS: 20.000 (Dim X) — это тпс для конкретного мира/сервера. Чтобы было понятно, кто из них лагает). ТПС = 20 — это максимальное число для майнкрафта, больше не бывает.
TPS: 20.000 (Overall) — это общий ТПС всего сервера, включая все подключенные дочерние сервера и миры. Если все сервера показывают ТПС20, а этот тпс — 15, значит лагает не игровой сервер, а что то внутри ядра/пермишенсов и т.п. Крайне хреново и нужно призывать техников.

Читайте также:  Как в Майнкрафте сделать кальян

Расчет ТПСа выводится из расчета затраченных сервером ms на обработку задач, которые должны были выполнится за 1 тик.
Например, если весь сервер обрабатывается за 0.05 ms — на нем 100% тпс 20, потому что каждая тпс-ина меньше или равна 50 мс)
Если например у сервера все действия занимают 40,0мс — это все еще означает, что тпс = 20. Так как 40 меньше 50ти. Однако если на сервере пара игроков — то явно что-то лагает, ведь 1 игрок забирает примерно 2 мс.
Если у сервера действия занимают 40049аджопасотона,0 мс — это значит, что тпс сервера дохрена низкий, зависит от того, что вообще происходит)

rY34rjJQlHV_b140CXQd01c5zQs7z2sLM8xFrwXw-sMXiHtugnHUg-CjQNICALGuedK7Sw65JY7hDI6vquHEKygn.jpg

В секунде работы сервера майнкрафта есть 20 тиков.
В каждом тике — 50 мс. В эти 50мс сервер должен успеть обработать ВСЕ свои задачи, все блоки, все механизмы, всех игроков, всех мобов, всех энтить и тайлов. все что происходит во всех прогруженных чанках.
Для идеальной работы каждый тик НЕ должен превышать 50 мс.
Грубо говоря — нормальная работа сервера выглядит вот так:

IElyJt8dYbza1qdhJeNM1tV26b1DchNb6222sfNbMsun4OK_K5FdSni3EJngoNRT94HC_G2KTJeqmiQnS3JFdsDp.jpg

На скрине каждый тик занимает меньше положенных 50 мс.
В игре это значение будет в том случае, если такты меньше 50 (и даже в этом случае — если один игрок кушает 48 тактов из 50 — это П@#$%ц. Так как норма — 2 такта на игрока).

Вот так выглядит лагающий сервер:

GZbf7d0D-3zPSO1yaHBzRgV5zZjYidbYUwCSmRKA7k0862GDaDqc4aiIm0jcr0_x8nAHGan4fmL9JaXDWmfnLtgj.jpg

Некоторые тики требуют для обработки больше, чем 50 мс.
В итоге — суммарно в 1 секунду все 20 тиков не влезают.
В этом случае ТПС=17, так как только 17 тиков успело отработаться в отведенное время.

А вот здесь у нас где-то проснулся ктулху и желает сожрать сервер.

JDfB_QwaEwrBxEXWbOduq5E9HMbfvjh6yK98vwB0yIyI6TyQHbUsbNwi9snwgv3APvHZ5zY4LdaQs49niVJqCur3.jpg

Что-то на сервере протикивает аж 100 мс (есть цифры и больше, например недавние лаги с елкой выдавали цифры под 600 и выше мс на просчет).
Здесь нам стоит посмотреть на нижний выхлоп ТПС:

Собсно здесь показан средний ТПС за последние 5 сек/10 сек/1мин/5 мин/15 минут (и будет видно, примерно когда пролагалось).
А так же во втором разделе показан Tick Durations — собсно таксты. То есть сколько мс занимал в среднем каждый тик.

Лаги вида ядерный П@#$%ц выглядят так:

XbNLVqkKd2tcgFidJPGuA3jmo_l6E4b58QaVZoH7ovVx3-QhzXUc_2SFMSjQqQxy-i6ttU0cCPehwM06cYHoLZZu.jpg

Значения:
20.0 является максимальным для сервера любого Майнкрафт. Это максимально возможный тпс для сервера.
19.0 — 19.99 — является нормальным для сервера. Может просаживаться при телепортации игрока из мира в мир, или на тяжелый регион. Так же, может просаживаться при первом логине игрока на сервер.
17.0 — 18.99 — является нормальным для тяжелого сервера, если появляется редко и ненадолго. Постоянное такое значение — не очень хорошо. Требуется написать на форум для проверки.
15.00 — 16.99 сервер подлагивает. Возможны микро-откаты, некорректная работа механизмов. Сообщите на форум.
10.00 — 14.00 — сервер лагает. Не играйте на таком сервере! Срочно сообщите на форум! Выйдите с сервера!
Ниже 10.00 — сервер очень сильно лагает. Играть на таком сервере крайне нежелательно.
ТПС 2 ? Вам звиздец, несите гробик карте.

Если показывает нормальное значение, а все равно лагает — значит лагает именно ваш компьютер/интернет. Добавьте памяти в настройках лаунчера, проверьте корректность драйверов, включая видеокарту, проверьте или переустановите джаву (деинсталлировать лаунчер и проинсталлировать обратно — он сам все поставит и проверит). Сделайте трассировку до сервера и проверьте ваш интернет.
Если ничего не получается — напишите на форум или в VK-поддержку (Сайт, правый нижний угол экрана).
Если ТПС сервера нормальный — ни о каком возврате по вине лагов речи быть не может. Запросы ТПС-а логируются.
Если сервер лагает, напишите об этом на форуме. Не надо играть на лагающем сервере. Игра на лагающем сервере осуществляется на свой страх и риск и никакому возврату имущества не подлежит.
Лаги на наших серверах предельно редкое явление, если сервер лагает у всех — значит с ним что-то не в порядке и надо писать на форум.
Если «меня лагануло, я умер, чо за фигня», а у всех все отлично — проверяйте ВАШ интернет.

Источник: minecraft.guild-bt.ru