1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Совет Уменьшаем лаги на сервере, в клиенте и другое...

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем max--2, 23 июн 2013.

Статус темы:
Закрыта.
  1. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
    Всем привет! На Rubukkit как известно часто задаются вопросом, «Почему у меня лагает сервер?» И почти всегда, это одни и те же проблемы, ну так вот, чтобы вопросов стало меньше, и не засирать до того нагруженный форум, была создана эта тема.
    Тема написана для ознакомительного характера, я не заставляю вас делать так как тут написано.
    Все что вы делаете со своим сервером, вы делаете на свой страх и риск.
    Но слишком смертельного, тут ничего нету.


    План темы:
    1) Что такое лаги? Что такое TPS? Что такое FPS?
    2) Какие требования нужны для нормальной работы сервера?
    3) Какие плагины вызывают лаги чаще всего?
    4) Как найти источник лагов?

    Лаг — задержка в работе компьютерного приложения, когда оно не реагирует на пользовательский ввод вовремя.

    FPS - количество кадров в секунду, на стороне клиента. То есть чем ниже FPS, тем ниже производительность, и соответственно появляются лаги.
    Нормальный FPS считается примерно не ниже 20-30.

    Советы по увеличению FPS (на стороне клиента):
    1) Отключаем ненужные программы.
    Перед тем как начать играть, отключить как можно больше не нужных программ, которые просто забивают процессор и ОЗУ. Наиболее распространенные: Torrent и Браузер.
    2) Ставим ту графику, которую тянет ваш компьютер.
    Поставить минимальные настройки в игре. (Меньше прорисовка, Графика на Быстро и т.д.)
    3) Поставить дополнительные моды для увеличения FPS, и уменьшения нагрузки.
    Например: OptiFine. Данный мод, является одним из популярных модов, так как он не только понижает лаги, а так-же добавляет много других настроек графики (отключение/включение анимация, погоды, неба, и т.д.), так же мод добавляет поддержку HD скинов, текстур, шрифтов и т.д.
    4) Выделить больше оперативной памяти для клиента.
    В некоторых лаунчерах, есть функция Выделение оперативной памяти для игры.

    Что такое TPS?

    Как узнать, сколько потребляет сервер и какие конкретно плагины?
    1) В некоторых плагинах встроена функция проверки оперативной памяти и TPS,
    Можно узнать командой в самом ядре(Spigot) /tps.
    Или через плагины
    Например:
    Essentials, команда /mem, показывает сколько всего, и сколько свободно оперативной памяти, так-же показывает TPS сервера.
    Nolagg, команда /nolagg mem

    2) Если у вас нет таких плагинов в которых встроен подсчет оперативной памяти, то вы можете использовать следующий: LagMeter

    3) Чтобы проверить какое именно плагины сколько употребляют , используем Nolagg.
    Заходим в игру, пишем команду /nolagg examine 500
    Ждем 25 секунд. И у нас в папке Plugins, создается файл, с результатом.
    Кидаем файл себе на комп, и открываем его с помощью самого Nolagg.jar (Двойной щелчек)
    И смотрим какой плагин, больше всего грузит систему. А дальше уже делаем, по рекомендациям ниже.

    Советы по уменьшению лагов на сервере:
    1) Поставить ядро Spigot, если вы были на Craftbukkit.
    Вместо MCPC использовать MCPC+, это Spigot со встроенным forge.

    (Spigot, намного оптимизирование, описывать все его преимущества долго, я опишу некоторые: при взрыве ТНТ, не так много лагов, стакаются несколько предметов, которые лежат рядом. )
    2) Проверять наличие обновлений плагинов под вашу версию сервера.
    (В основном, разработчики плагинов заботятся о качестве своего плагина, и поэтому с каждым обновлением стараются понизить его нагрузку.)
    3) Базы данных плагинов, которые подключены к нему, должны находится на одном и том же сервере(хостинг) что и игровой сервер.
    (Если будет база стоять на сайте, а обычно это отдельные хостинги, то каждый запрос будет проделывать очень-очень большой путь, и соответственно задержки сервера будут очень-очень большие.)
    4) Проверять функционал плагинов, на повтор.
    То есть, есть один большой плагин, например: Essentials, AdminCMD, CommandBook. И в них есть просто куча команд и функций, которые есть в других плагинах, и чтобы не ставить еще больше лишних плагинов, проверяйте их функцию у этих.
    Например, в плагине Essentials, есть функционал следующих плагинов: iConomy, uHome, OpenInv, VanishNoPacket, Kit и другие.
    Исключение ставить эти плагины, только если вам нужно подключить их к БД.
    5) Ограничить карту и прогрузить её самому.
    Многие умники, на серверах в которых нет ограничения карты, просто берут, и идут подальше от спавна. Естественно, увеличивается нагрузка из-за загрузки и сохранения чанков.
    Поэтому лучше избежать этого. Ставим плагин WorldBorder, и ограничиваем карту /wb set 2000, карту мы ограничили, теперь нужно ее прорисовать, пишем команду /wb fill. И ждем, когда он будет ее прогружать, конечно будут лаги, из-за этого, но лучше они будут один раз, и когда сервер закрыт на технические работы, а не всегда лагать из-за прогрузки игроками.
    6) Очищать Дроп, или поставить плагин на автоудаление Дропа.
    7) Проверять карту на наличие редстоун схем.

    Многие школьнички, наставят кучу повторителей, разных качалок, и т.д. Тем самым нагружают сервер. Что приводит к лагам.
    8) Античиты. Любой античит это уже нагрузка на сервер. Поэтому по возможности лучше ставить защиты лаунчера, клиента.
    Самый прожорливый анти x-ray, это orebfuscator. Но лучше использовать встроенный в Spigot ядро, orebfuscator:
    Код:
    orebfuscator:
      enable: true
      engine-mode: 2
      disabled-worlds:
      - world_the_end
    9) Заменить плагин, более «лучшей» альтернативой.
    Многие плагины, просто сделаны криво, либо в них есть лишний функционал, который и жрет, наши дорогие ресурсы. В таких случаях лучше их просто заменить, либо отключить ненужный функционал:
    Лучше заменить плагины:
    LWC => Wgfix + MachineGuard. (Инструкция)
    Dynmap => MinecraftOvervier

    Конечно, альтернативы не всегда удобные, и не быстро привыкаешь, но ради плавной работы клиента и сервера, можно потерпеть.


    Извиняюсь за возможные ошибки, опечатки :)
     
    Последнее редактирование: 6 июн 2015
    Pokemowka, danilsik, Hephest и 27 другим нравится это.
  2. Быстрая раскрутка сервера Minecraft
  3. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
    резерв
     
  4. _Dimk_O_

    _Dimk_O_ Старожил Пользователь

    Баллы:
    123
    Skype:
    dimk__o
    Вот смотри, сервер залагивает на 3-4 сек в минуту, может чуть чаще, не засекал.
    Плагин Nolagg выдал вот такую вот фигню.
    Безымянный.png
    Так как я не особо понимаю что в этом отчете и как, прошу разъяснить.
    Хотя что-то мне подсказывает что грузит сервер LWC...

    P.S. Стоит Libigot
     
  5. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
    Да, LWC много употребляет и CraftBook.
    Попробуй протестировать без LWC, и ставь вместо Craftbook => FalseBook, он меньше жрет, и не так тупит.
     
  6. _Dimk_O_

    _Dimk_O_ Старожил Пользователь

    Баллы:
    123
    Skype:
    dimk__o
    Это я знаю, но сколько я не искал FalseBook под 1.5.2 у меня все никак не получалось найти модуль который отвечает за IC схемы...
    Пришлось поставить вот такую вот замену(
     
  7. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
    это я сам не знаю, просто не было необходимости ставить, сейчас хватает лифта и ворот.
    up
     
    slavik123123123 нравится это.
  8. Dan-det

    Dan-det Старожил Пользователь

    Баллы:
    103
    Ну уменьшить я и сам могу, а как увеличить? ))
     
    FastPunkBoy, appl3_w0rm, mechanicII и ещё 1-му нравится это.
  9. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
    опечатался :)
    спс
     
  10. sharki333

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

    Баллы:
    88
    Имя в Minecraft:
    sharki333
    Большуший лойс тебе,за ворлдбордер.А остальное и так знаем:3
     
  11. Dimonskiu

    Dimonskiu Старожил Пользователь

    Баллы:
    103
    https://github.com/Escapecraft/FalseBook
     
  12. InterVi

    InterVi Старожил Пользователь

    Баллы:
    173
    Я не согласен про прогрузку карты и маленький бардюр - 4 тысячи хотябы надо. Античит тоже не сильно грузит, вообще незаметно (если он не настроен кривыми руками).

    Не надо на спауне делать магазин, где много предметов в рамках, будет падать FPS.
     
    mechanicII нравится это.
  13. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
    2000 я для примера взял
     
    Stalkerdeni971 и ВремяПриключений нравится это.
  14. dima621

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

    Баллы:
    88
    Имя в Minecraft:
    diman621
    Спасибо, Держи лайк)
     
  15. _Dimk_O_

    _Dimk_O_ Старожил Пользователь

    Баллы:
    123
    Skype:
    dimk__o
    Скомпиль и выложи.
    Я лично за****ся пытаться его компилить, нихера не получается.
     
  16. Автор темы
    max--2

    max--2 Старожил Пользователь

    Баллы:
    173
  17. REZAYS

    REZAYS Старожил Пользователь

    Баллы:
    153
    А как же /gc(essentials)
    А как же /timings merged (не помню как правильно)(Spigot)
    Можно использовать /tps(Вроде как встроено в спигот)
    В WG или WE есть еще /remove ;)
    Насчет редстоуна: Киньте плагин на поиск и подсчет редстоун-схем.:)
     
    NoNaMeHaCkEr2002 нравится это.
  18. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Все в принципе правильно, но все же хочу уточнить пару вопросов.
    1) Определение TPS приведено так и не было, по этому напишу:
    TPS - это Ticks Per Second что в переводе означает "Тиков в секунду"
    Тик - Единица измерения времени на в Minecraft.
    1 секунда = 20 тиков.
    Если сервер не справляется со своей нагрузкой, то он начинает оптимизировать использование ресурсов уменьшая TPS. То есть грубо говоря "замедляя время".
    Отсюда появляются эффекты типа "Бесконечного дня", отпрыгивающие обратно солнце и луна, тупящие мобы.

    А вот тут могу не согласиться! Далеко не всегда клиенту требуется дополнительная память, и ее предоставление не всегда положительно повлияет на производительность.
    Другое дело когда клиент ругается на Out of Memory, это да, но просто так, это уже вопрос.
    К тому же разработчик вышеупомянутого мода Optifine советует наоборот понизить кол-во выделяемой MC памяти.
    Цитирую:
    5. Lauch Minecraft with less memory (yes, really). Usually it does not need more than 350 MB and runs fine on all settings with the default texture pack. By default java allocates way too much memory (1GB) which may get swapped to disk and the overall performance may suffer a lot.

    Что в переводе:
    Запустите Minecraft с меньшим кол-вом памяти (Да, вам не показалось)
    Обычно ему не требуется больше чем 350 мб и он работает отлично на полных настройках со стандартным текстур-паком. По стандарту Java выделяется слишком много памяти (1 GB) которая в итоге может оказаться на диске (Как я понял речь идет о том что Java может начать использовать файл подкачки вместо оперативной памяти)
    и это приведет в большой потере производительности.

    MCPC сделан на основе Spigot :)

    За функционал лаг-метра и альтернативный плагин карты - отдельное спасибо!
     
    ragecraft, Сникерсни, DrCheater и 2 другим нравится это.
  19. sharki333

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

    Баллы:
    88
    Имя в Minecraft:
    sharki333
    Интересно,лойс однозначно!
     
  20. ql_Nik_lp

    ql_Nik_lp Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    q-nik-p
    Имя в Minecraft:
    ql_Nik_lp
    Ребят, меня вот заинтересовал вопрос с оперативной памятью, решил провести "эксперемент":
    Вот результаты
     
    BleaZzZ и REZAYS нравится это.
  21. WCRAFT

    WCRAFT Старожил Пользователь

    Баллы:
    173
    Skype:
    worldplaytv
    Имя в Minecraft:
    World
    А как же команда /tps? :(
     
Статус темы:
Закрыта.

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