Как оптимизировать сервер Minecraft на слабом VPS: TPS без лагов
Введение: слабый VPS — не приговор
Даже на бюджетном VPS можно добиться стабильных 20 TPS, если правильно настроить сервер. Главная ошибка новичков — попытка запустить тяжёлый модпак на 2 ГБ ОЗУ. В этом гайде я покажу, как выжать максимум из слабого VPS.
1. Используйте Paper, а не ванильный сервер
Paper — это оптимизированный форк сервера. Он значительно быстрее ванильного Minecraft и Spigot, особенно на слабом железе . Переход на Paper даёт прирост производительности до 30-50% без изменения геймплея.
2. Настройка server.properties
Самые важные параметры для производительности :
view-distance=6 # Уменьшить с 10 до 6-8
simulation-distance=4 # Уменьшить с 10 до 4-6
max-players=10 # Реалистичное значение
Каждый лишний чанк в памяти потребляет 2-5 МБ. На слабом VDS уменьшайте эти параметры до 4-6.
3. Настройка paper.yml
В файле paper.yml настройте:
chunk-loading:
max-loads-per-tick: 5 # Уменьшить нагрузку генерации чанков
redstone-implementation: ALTERNATE # Быстрее, но менее точный редстоун
4. Ограничение спавна мобов
В bukkit.yml уменьшите лимиты :
spawn-limits:
monsters: 30 # Вместо 70
animals: 8 # Вместо 15
water-animals: 5
5. Использование Aikar's Flags для JVM
Стандартный запуск java -Xmx4G -jar server.jar не использует современный сборщик мусора. Используйте оптимизированные флаги запуска, чтобы снизить паузы сборщика мусора:
java -Xms2G -Xmx4G -XX:+UseG1GC -XX:+ParallelRefProcEnabled -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions -XX:+DisableExplicitGC -XX:+AlwaysPreTouch -jar server.jar nogui
Эти флаги снижают нагрузку на процессор и уменьшают паузы GC, что особенно важно для серверов с малым количеством ОЗУ.
6. Отключение ненужных функций
/gamerule doFireTick false— отключить распространение огня/gamerule mobGriefing false— криперы не разрушают блоки/gamerule doWeatherCycle false— отключить погоду (молнии нагружают CPU)
7. Предзагрузка чанков (Chunky)
Установите плагин Chunky и предзагрузите мир. Когда игроки исследуют новые территории, сервер генерирует чанки в реальном времени, создавая нагрузку. Предзагрузка переносит эту нагрузку на время, когда игроков нет .
8. Перезагрузка раз в 12 часов
Настройте автоматический перезапуск сервера раз в 12-24 часа. Это очищает память от утечек и сбрасывает фрагментацию RAM. Простой скрипт для systemd с RestartSec=10 решает эту задачу .
💡 Совет профи
Не выделяйте серверу всю память VDS. Оставьте 1-2 ГБ для операционной системы. Если на VDS 4 ГБ ОЗУ, серверу выделите максимум 2.5-3 ГБ. Иначе система начнёт использовать своп, и сервер будет лагать сильнее, чем при нехватке памяти .
💬 Комментарии (0)
🔒 Войдите, чтобы оставить комментарий
😊 Пока нет комментариев. Будьте первым!