Падение TPS

Jover

Пользователь
Сообщения
39
Всем привет.

Не большая проблема, при онлайне 10-15 человек начинается кратковременное снижение TPS с какой то периодичностью, не могу понять в чём причина.
Тайминги:
Сервер на 1.19 Paper
Иногда падает до 18 тпс

Ниже прикрепил список плагинов.
10 гб Озу/4-х яд проц

Попрошу не кидаться камнями, а подсказать, ткнуть в проблему.
Спасибо :)
 

Вложения

  • список.JPG
    список.JPG
    47.4 KB · Просмотры: 26
Решение
А в спарке написано то что их 8?
Вам необходимо зарегистрироваться для просмотра изображений-вложений


Используй или вместо paper

Если ты так хочешь нагрузить интернет игроков отсутствием сжатия трафика (не до конца проверенная инфа), то используй антииксрей, который встроен в paper.yml вместо отдельного плагина orebfuscator, так будет меньше нагрузки (проверенная инфа)

Отключи ненужные функции, такие как сохранение текстов табличек и ещё что-то, вообщем сам посмотри, в плагине coreprotect

Вам необходимо зарегистрироваться для просмотра изображений-вложений

ну тут без комментариев

Добавь в параметры запуска следующие аргументы: -XX:+UseLargePages -XX:LargePageSizeInBytes=2M -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu...
Всем привет.

Не большая проблема, при онлайне 10-15 человек начинается кратковременное снижение TPS с какой то периодичностью, не могу понять в чём причина.
Тайминги:
Сервер на 1.19 Paper
Иногда падает до 18 тпс

Ниже прикрепил список плагинов.
10 гб Озу/4-х яд проц

Попрошу не кидаться камнями, а подсказать, ткнуть в проблему.
Спасибо :)
offtop А где...
Вам необходимо зарегистрироваться для просмотра изображений-вложений
 
А в спарке написано то что их 8?
Вам необходимо зарегистрироваться для просмотра изображений-вложений


Используй или вместо paper

Если ты так хочешь нагрузить интернет игроков отсутствием сжатия трафика (не до конца проверенная инфа), то используй антииксрей, который встроен в paper.yml вместо отдельного плагина orebfuscator, так будет меньше нагрузки (проверенная инфа)

Отключи ненужные функции, такие как сохранение текстов табличек и ещё что-то, вообщем сам посмотри, в плагине coreprotect

Вам необходимо зарегистрироваться для просмотра изображений-вложений

ну тут без комментариев

Добавь в параметры запуска следующие аргументы: -XX:+UseLargePages -XX:LargePageSizeInBytes=2M -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu -XX:+UseNUMA -XX:+AlwaysPreTouch -XX:-UseBiasedLocking -XX:+DisableExplicitGC
 
Будьте осторожны с рекомендациями этого пользователя.
Добавь в параметры запуска следующие аргументы: -XX:+UseLargePages -XX:LargePageSizeInBytes=2M -XX:+UnlockExperimentalVMOptions -XX:+UseShenandoahGC -XX:ShenandoahGCMode=iu -XX:+UseNUMA -XX:+AlwaysPreTouch -XX:-UseBiasedLocking -XX:+DisableExplicitGC
Важно сказать, что нужно их не добавить, а заменить имеющиеся флаги этими (что кстати всё равно невозможно, т.к. панелька). Но профит от них надо сказать сомнительный.
Авто объединение сообщений:

Речь шла кстати про paper.yml, который является самой важной частью
Авто объединение сообщений:

С этого кстати посмеялся, спасибо
Вам необходимо зарегистрироваться для просмотра изображений-вложений
 
Важно сказать, что нужно их не добавить, а заменить имеющиеся флаги этими (что кстати всё равно невозможно, т.к. панелька). Но профит от них надо сказать сомнительный.
Авто объединение сообщений:


Речь шла кстати про paper.yml, который является самой важной частью
Авто объединение сообщений:

С этого кстати посмеялся, спасибо
Вам необходимо зарегистрироваться для просмотра изображений-вложений
Сборка полностью собрана с нуля, за основу взят чистый сервер у них на сайте.
 
paper.yml не может не создасться, это выглядит странно...
Действительно, я давно не заглядывал в него, но он точно был.
Авто объединение сообщений:

paper.yml не может не создасться, это выглядит странно...
Нашёл такое! там и настройки xray и.тд
 

Вложения

  • paper-global.yml
    3.9 KB · Просмотры: 3
  • paper-world-defaults.yml
    7.2 KB · Просмотры: 2
Последнее редактирование:
Действительно, я давно не заглядывал в него, но он точно был.
Авто объединение сообщений:


Нашёл такое! там и настройки xray и.тд
А блин, 1.19 же! Обнови спарк, он только обновленный может paper из 1.19 вынуть
 

Вложения

  • crash-2022-07-02_23.49.09-server.txt
    26.7 KB · Просмотры: 4
Последнее редактирование модератором:
Выкл xray, сервер запустился но Paper нет.
Ты сам хоть понял что сказал?
Авто объединение сообщений:

paper.yml-ки хранятся теперь в отдельной папке. configs
В общем я уже вижу у тебя там неоптимизированные моменты, так что щас подработаю
Авто объединение сообщений:

Ну вот базово-оптимизированный paper-world-defaults.yml, который и не сломает игру сильно, и не будет залагивать
 

Вложения

  • paper-world-defaults.yml
    7.2 KB · Просмотры: 3
Последнее редактирование:
Это антииксрей
Доброго дня! Возвращаюсь с проблемой.
Стало только хуже, до 14-15 стал падать.
После всех шагов указанных выше по чату.
Оставил тайминги.
Авто объединение сообщений:

Может быть какой то плагин?
 
Доброго дня! Возвращаюсь с проблемой.
Стало только хуже, до 14-15 стал падать.
После всех шагов указанных выше по чату.
Оставил тайминги.
Авто объединение сообщений:

Может быть какой то плагин?

Рискну предположить, что подобное поведение может быть вызвано утечкой памяти и, соответственно, потугами бомжа Валеры (Garbage Collector) ее освободить (почти всегда JVM сделает вызов к GC, прежде чем вывалит OOME).
Вам необходимо зарегистрироваться для просмотра изображений-вложений


Есть возможность как-нибудь получить график использования ОЗУ во время работы?
+ Не помешает дамп кучи без GC и с предварительно вызванным GC:
Выполнить /spark heapsummary в момент максимального использования ОЗУ, если таковой имеется.
Выполнить /spark heapsummary --run-gc-before (через минут 5 после использования первой команды).
Мониторить использование памяти можно через /spark healthreport --memory.

- - - UPD:
1. Периодичность падения TPS также наводит на мысль об утечках памяти и работе GC.
2. Заметил, что ты используешь Pterodactyl, но график использования памяти там слишком урезанный и он не подойдет для полноценного анализа, только если ловить момент с пиками и падениями.
3. Поскольку сборка с говносайта, да еще и с nulled плагинами различными, то почему бы и не утечки.
4. Кто посоветовал использовать Serial Collector?... Размер кучи, судя по флагам запуска, огромен, порядка 10 GB. Использование Serial GC в этом случае — самоубийство.
Пробуем менять на G1GC: -XX:+UseSerialGC заменить на -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions.
В случае, если утечка памяти имеет место, то вполне реально получить результат еще хуже, поскольку мы боремся со следствием, а не первопричиной (зависит от скорости заполнения кучи и масштабов утечки). И это отнюдь не потому, что G1GC хуже Serial.
5. Можно вовсе попробовать , которые как раз делают упор на настройку GC.
 
Последнее редактирование:
Рискну предположить, что подобное поведение может быть вызвано утечкой памяти и, соответственно, потугами бомжа Валеры (Garbage Collector) ее освободить (почти всегда JVM сделает вызов к GC, прежде чем вывалит OOME).
Вам необходимо зарегистрироваться для просмотра изображений-вложений


Есть возможность как-нибудь получить график использования ОЗУ во время работы?
+ Не помешает дамп кучи без GC и с предварительно вызванным GC:
Выполнить /spark heapsummary в момент максимального использования ОЗУ, если таковой имеется.
Выполнить /spark heapsummary --run-gc-before (через минут 5 после использования первой команды).
Мониторить использование памяти можно через /spark healthreport --memory.

- - - UPD:
1. Периодичность падения TPS также наводит на мысль об утечках памяти и работе GC.
2. Заметил, что ты используешь Pterodactyl, но график использования памяти там слишком урезанный и он не подойдет для полноценного анализа, только если ловить момент с пиками и падениями.
3. Поскольку сборка с говносайта, да еще и с nulled плагинами различными, то почему бы и не утечки.
4. Кто посоветовал использовать Serial Collector?... Размер кучи, судя по флагам запуска, огромен, порядка 10 GB. Использование Serial GC в этом случае — самоубийство.
Пробуем менять на G1GC: -XX:+UseSerialGC заменить на -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+UnlockExperimentalVMOptions.
В случае, если утечка памяти имеет место, то вполне реально получить результат еще хуже, поскольку мы боремся со следствием, а не первопричиной (зависит от скорости заполнения кучи и масштабов утечки). И это отнюдь не потому, что G1GC хуже Serial.
5. Можно вовсе попробовать , которые как раз делают упор на настройку GC.
Ух, буду пробовать спасибо!
 
Назад
Сверху Снизу