Что нового?
Проверенная информация из официальных источников.
1740404157119.png

Привет всем, Николь на связи ✌️
Делала небольшой перерыв от разработки, который в целом и сейчас продолжается, но захотелось мне высказаться насчет нового ядра и его использования, все мои мысли и слова основываются на плюс минус официальных статьях из PaperChan и других блогов разработчиков.


Почему администраторы боятся новых ядер?
1. Сложность перехода и несовместимость плагинов
Одной из главных причин является сложность перехода на новое ядро. Большинство серверов использует множество плагинов, и многие из них могут не работать с Folia без значительных изменений. Например, Folia требует, чтобы плагины поддерживали его API, что не всегда просто для разработчиков. Это создает дополнительные трудности для администраторов, которые не хотят тратить время на адаптацию и отладку своего сервера под новое ядро.

2. Непроверенная стабильность и производительность
Хотя Folia обещает улучшенную производительность за счет мультипоточности, многие администраторы опасаются его использования из-за недостаточного количества тестов и отзывов от пользователей. Множество форумов полны обсуждений о том, что новое ядро может не справляться с нагрузкой на больших серверах или создавать новые типы проблем, которые еще не решены разработчиками.

3. Отсутствие поддержки и документации
Еще одной проблемой является недостаток информации и поддержки по сравнению с более старыми и проверенными ядрами, такими как Paper и Spigot. Администраторы часто сталкиваются с нехваткой подробной документации и ответов на форуме, что делает процесс адаптации и настройки еще более сложным.

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



Что делает Folia особенным?
1. Локализация лагов
Одно из ключевых преимуществ Folia - это локализация лагов. Вместо того чтобы лаги распространялись по всему серверу, они ограничиваются отдельными регионами, что позволяет сохранять высокую производительность в остальных частях сервера.

2. Улучшенное поведение спауна мобов
Folia также улучшает поведение спауна мобов, приближая его к одиночной игре. Это позволяет избежать проблем с неравномерным распределением мобов на сервере с несколькими игроками.

3. Мультипоточность
Одним из главных новшеств Folia является его мультипоточность, что позволяет использовать возможности современных многопоточных процессоров и значительно повышать производительность сервера при правильной настройке.



1740404777715.png

Разберёмся, почему наше русскоязычное сообщество администраторов Minecraft боится перемен, особенно когда речь идёт о новом ядре Folia.

Folia, как ядро, привлекает внимание своими обещаниями многопоточности и увеличения производительности серверов. Но вот ирония: тестирование на мощнейшем сервере с двойными процессорами AMD EPYC, 2 ТБ оперативной памяти и 25 Гбит/с сетью, как это было на Folia, вызывает только смех. Если для проверки новой технологии требуется такая "чудо-машина", как же тогда обычные серверы смогут справиться?

1740404829299.png
Статистика нагрузки регионов Folia при тестах Paper на двух Epyc 7713.
1740404853940.png
Количество сущностей при тестах ядра Folia от Paper

На приведённых скриншотах видно, что при 327 игроках и 143 регионах нагрузка на ядро составила 1384.0% от допустимого, что само по себе уже смешно. Prismatic, например, выдерживал 30 тысяч сущностей в виде подожженных TNT, и это ядро возвращало мёртвый регион с 0.00 TPS до 23.20 всего за секунды. И это на обычном сервере, без сверхъестественных характеристик.

1740404906404.png
Нагрузка сервера на Xeon CPU E5-2680 v4 с 10GB ОЗУ на Prismatic.

1740404925420.png
Демонстрация мертвого региона с 0.00 TPS. Нагрузка ядра в треть.

Подход Folia к разделению регионов и их независимой обработке выглядит интересно на бумаге, но реальная жизнь показывает другие результаты. Независимые тик-петли для каждого региона, которые якобы должны улучшить производительность, на деле приводят к перераспределению нагрузки и локализации лагов, что можно видеть по огромной загрузке сервера при относительно небольшом количестве игроков.

Хотя казалось бы, стоило нормально заняться кодовой базой ядра, как сразу становится видно, что можно делать качественные ядра, которые выдерживают огромнейшие нагрузки, на столько дешевом оборудовании за 7к рублей на зеоне.

Тесты с 2b2t и DonutSMP также вызывают вопросы. Если бы действительно можно было масштабироваться и поддерживать стабильность, почему тогда до сих пор большинство серверов с опаской смотрят на это ядро? Хотя изрядно, тут больше другая проблема. D3st0ny на стриме у bratishkinoff вполне показал, как Prismatic держал 700 онлайна, когда игроки распределены по всей карте равномерно. И то насколько мне известно по стриму, там ребята упёрлись в лимиты по Velocity, а ядро могло выдержать на их оборудовании до 2к игроков. Но не может же у Paper быть всё настолько гладко) Даже такая демонстрация, не заставило сообщество полноценно пересесть на Folia.

Комьюнити также настораживает сложность адаптации плагинов под Folia. Наличие флага folia-supported: true само по себе говорит о том, что без корректировок большинство существующих плагинов работать не будет. Это добавляет работы и осложняет жизнь разработчикам и администраторам серверов. Да подавляющее большинство простых плагинов заведутся на Folia с добавлением этого флага в плагин. Но стоит плагину использовать обычные SCHEDULER, так это попадает под полную перепись и адаптацию для Folia. Что как бы в больших плагинах, достаточно трудоёмкий процесс и требует постоянного тестирования.

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