Minecraft.How
Загрузка...
Перейти к содержимому
Консоль сервера Minecraft с настройками потоков Folia и показателями загрузки регионов

Folia: как региональная многопоточность меняет сервер

Alex Maftei
Alex Maftei
@ice
Обновлено
129 просмотров
TL;DR:Folia - многопоточный форк Paper, который позволяет крупным серверам Minecraft распределять нагрузку между ядрами процессора. Он создан для сообществ с 200 и более игроками, разбросанными по миру, и действительно повышает производительность, но ограничивает совместимость с плагинами.
GitHub · Проект сообщества Minecraft

Folia (PaperMC/Folia)

Форк Paper, добавляющий региональную многопоточность на выделенный сервер.

Поставить звезду на GitHub ↗
⭐ 4,228 звезд💻 Shell📜 GPL-3.0

Если вы управляете крупным сервером Minecraft и наблюдаете резкое падение TPS, когда кто-то исследует новые чанки или число игроков достигает пика, Folia может оказаться тем решением, которое вы искали. Этот форк на базе Paper полностью меняет подход серверов Minecraft к вычислениям, разделяя мир на независимые регионы, каждый из которых работает в отдельном потоке. Вместо одного основного потока, который пытается справиться со всеми задачами одновременно, Folia позволяет ядрам процессора действительно работать параллельно.

Что такое Folia

Folia - не мод и не плагин. Это полностью переработанный сервер Paper, в котором вообще отсутствует понятие основного потока. Соседние чанки объединяются в "регионы", и каждый регион выполняет собственный цикл тактов в пуле потоков. Представьте, что разные части мира получили собственные независимые процессоры, вместо того чтобы заставлять один поток контролировать абсолютно все.

Эта архитектура важна, поскольку она меняет способ масштабирования сервера.

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


Зачем это нужно

Больше всего выигрывают крупные серверы с рассредоточенными игроками. Сети Skyblock, где плавучие острова игроков разбросаны по разным измерениям, огромные миры выживания, пользовательские RPG-серверы с разнесенными подземельями - именно здесь Folia раскрывается лучше всего. Если все игроки собираются в одной области спавна, такого же прироста производительности не будет. Но для SMP-сервера с 200 и более игроками, исследующими разные части мира, разница будет значительной.

Сразу стоит уточнить: это не замена, которую можно просто установить вместо текущего сервера.

Ваши плагины придется переписать для многопоточной среды Folia. Это главная цена перехода. Но если ваш сервер уже достиг масштаба, при котором вы рассматриваете Folia, вероятно, большая часть плагинной инфраструктуры у вас и так собственная. Обычные плагины Paper, рассчитанные на наличие основного потока, сразу перестанут работать в Folia.

Однако результат вполне реален. При правильной настройке производительность действительно растет вместе с количеством ядер процессора. На стандартном Paper добиться этого невозможно.


Установка и базовая настройка

Сначала загрузите последнюю сборку со страницы загрузок PaperMC. По состоянию на 2026 год Folia поддерживает современные версии Minecraft, начиная с 1.20.4. Скачайте jar-файл в каталог сервера:

bash
wget https://api.papermc.io/v2/projects/folia/versions/latest/builds/latest/downloads/folia-latest.jar
mv folia-latest.jar folia.jar

Затем примите условия EULA в файле eula.txt. Один раз запустите сервер, чтобы создать файлы конфигурации:

bash
java -Xmx30G -Xms30G -jar folia.jar nogui

Остановите сервер, после чего будет создан файл конфигурации folia.yml, и переходите к основной работе: настройке потоков. Здесь нельзя просто увеличить число потоков до максимума и считать задачу выполненной. Документация PaperMC рекомендует заранее сгенерировать мир перед запуском рабочего сервера, чтобы значительно снизить нагрузку от загрузки чанков.


Настройка потоков: главная сложность

Именно здесь многие сталкиваются с трудностями. В файле folia.yml есть параметр `threaded-regions.threads`. Не устанавливайте для него максимальное значение без расчетов. Сам проект рекомендует выделять потоки для ввода-вывода Netty, примерно 4 на 200-300 игроков, потоки ввода-вывода системы чанков, примерно 3 на 200-300 игроков, рабочие потоки системы чанков при заранее сгенерированном мире, примерно 2 на 200-300 игроков, а оставшиеся ядра использовать для потоков тактов, сохраняя общую загрузку в пределах 80%.

На машине с 32 ядрами и 500 игроками примерное распределение будет таким:

  • Ввод-вывод Netty: 8 потоков
  • Ввод-вывод системы чанков: 6 потоков
  • Рабочие потоки системы чанков: 4 потока
  • Потоки тактов: оставшиеся ядра в пределах 80% загрузки, примерно 10 потоков

Не следует выделять 100% ресурсов, поскольку плагины и непредвиденные фоновые задачи создают собственные потоки и могут привести к сбою сервера. Ограничение в 80% служит важным запасом безопасности.

Даже такое распределение является лишь отправной точкой. Отслеживайте фактическое использование потоков под нагрузкой и корректируйте настройки. В файле folia.yml каждый параметр сопровождается подробным комментарием.


Основные работающие возможности

Изоляция регионов. Каждый регион независимо обрабатывается с частотой 20 TPS. Скачок задержки в одном регионе не распространяется на остальные. Если система подземелий плохо оптимизирована, она не снизит производительность области спавна.

Полноценное масштабирование потоков. В отличие от подхода Paper с пулом потоков для плагинов, где критичные для тактов операции все равно становятся узким местом, регионы Folia выполняют логику тактов параллельно. Дополнительные ядра действительно увеличивают объем обработки. Масштабирование не линейное, но оно работает.

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

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


Что перестанет работать и как с этим справиться

Большинство плагинов предполагают, что работают в основном потоке и могут безопасно читать или изменять состояние мира без синхронизации. В Folia это не так. Если плагин выполняет действие вроде "проверить, является ли блок X камнем, а затем заменить его воздухом", состояние гонки может возникнуть между потоками, хотя в Paper такого бы не произошло. Будьте готовы к сбоям плагинов.

Несколько конкретных примеров:

  • Телепортация между регионами сложнее и может вызвать взаимную блокировку, если разработчики плагинов не предусмотрели такую ситуацию
  • Проверки границы мира учитывают регионы и могут работать не так, как вы ожидаете
  • Таймеры и запланированные задачи должны быть безопасны для регионов, иначе возможно повреждение данных
  • Для отслеживания сущностей на границах регионов потребуется обновление плагинов

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


Когда стоит использовать Folia

У вас машина с 16 или более ядрами. На сервере регулярно будет одновременно находиться более 200 игроков. Игроки рассредоточены по миру, а не собираются на спавне. У вас есть собственная плагинная инфраструктура или вы готовы перенести существующие плагины.

Если все четыре условия выполнены, Folia вам подходит.

На VPS с 8 ядрами и 50 игроками лучше остаться на Paper. Прирост не оправдает проблем с совместимостью. На SMP-сервере со 100 игроками, которые в основном находятся на спавне, Folia поможет, но эффект будет гораздо слабее, чем на сервере с рассредоточенной аудиторией.

Но если вы создаете новое поколение крупных многопользовательских сообществ Minecraft, Folia действительно предлагает более высокий предел производительности. Игроки со скинами вроде adderall_abuser, ironmouse и другие активные участники сообществ на огромных серверах уже осваивают эту технологию. Загляните в стримерские сообщества и крупные проекты выживания на Modrinth, и вы заметите, что Folia используется все чаще.


Альтернативы, которые стоит рассмотреть

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

Purpur. Форк Paper с дополнительными оптимизациями для отдельных игроков. Лучше подходит серверам, где поведение игроков сильно различается: одни находятся в AFK, другие активно исследуют мир. Архитектурных изменений меньше, чем в Folia, а прирост производительности более точечный.

Сервер Fabric. Если вам нужна поддержка модов, а не плагинов, экосистема Fabric сегодня вполне подходит для серверов. Она не использует такую же многопоточность, но остается легкой и быстрой.

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

Об авторе
Alex Maftei
Alex MafteiВедущий автор

Lead writer at minecraft.how. Long-time Minecraft player running a small SMP server, testing every build, mod, and seed before writing about it.

Поделитесь с друзьями!

Часто задаваемые вопросы

Совместима ли Folia с моими существующими плагинами Paper?
Большинство плагинов Paper не будут работать в Folia, поскольку они рассчитывают на единый основной поток и небезопасный доступ к миру. Плагины необходимо специально переписывать для многопоточной среды. Требования к совместимости приведены в документации PaperMC. Некоторые новые плагины уже поддерживают Folia, но это все еще редкость. Для перехода потребуется тщательно проверить каждый плагин и, возможно, переписать часть из них.
Какого прироста производительности можно ожидать от Folia?
Прирост зависит от количества ядер процессора и того, насколько игроки рассредоточены по миру. Сервер с 16 ядрами и 400 игроками в разных регионах может обрабатывать в 2-4 раза больше нагрузки по сравнению с Paper. Однако результат сильно зависит от настройки потоков, предварительной генерации мира и оптимизации плагинов. Если все игроки находятся в одном месте, выигрыш будет минимальным. Улучшение реально, но требует правильной настройки.
Какое оборудование минимально требуется для Folia?
Проект рекомендует не менее 16 физических ядер процессора, а не потоков. Folia работает и с меньшим количеством ядер, но преимущества ее архитектуры сокращаются. Также потребуется достаточно оперативной памяти для накладных расходов многопоточности, обычно не менее 8 ГБ дополнительно. SSD важен, поскольку параллельный ввод-вывод чанков может стать узким местом. Хорошей отправной точкой будет сервер с 16 ядрами, 64 ГБ оперативной памяти и NVMe.
Поддерживает ли Folia версии Minecraft до 1.20?
Нет. Folia доступна только для Minecraft 1.20.4 и более новых версий. Архитектурные изменения потребовали поддержки регионализации, которой не было в старых версиях. Если вы используете 1.19 или более раннюю версию, придется остаться на Paper или Purpur. Актуальную поддерживаемую версию можно проверить на официальной странице загрузок.
Можно ли перенести существующий сервер Paper на Folia без потери данных?
Технически да, но процесс будет сложным. Файлы мира совместимы, однако плагины потребуется переписать. Безопаснее всего запустить Folia на копии мира, тщательно все проверить и только потом выполнить переход. Отладка экосистемы плагинов крупного сервера может занять 2-4 недели. Большинство сообществ сначала тестируют Folia на отдельном оборудовании и не переносят рабочий сервер сразу.

Have a Question or Tip about this Guide?Community Q&A

Ask a question or help other players below. Join the discussion and share your Minecraft tips!

Комментарии

Пока нет комментариев. Станьте первым, кто поделится своим мнением!

Похожие статьи

Folia и Paper: Тренды серверов Skyblock в 2026

Folia и Paper: Тренды серверов Skyblock в 2026

Folia и Paper доминируют в серверном ПО для Skyblock в 2026. Paper остается стабильным и совместимым, в то время как региональный мультитрединг Folia обеспечивает производительность для серверов с высоким трафиком. Узнайте, что изменилось и что подходит вашему серверу.

07.07.2026
FoliaToGo: Свежие сборки Folia Каждую Ночь

FoliaToGo: Свежие сборки Folia Каждую Ночь

FoliaToGo автоматизирует ночные сборки экспериментального сервера Folia для Minecraft, позволяя запускать последнее серверное ПО без ожидания официальных релизов. Предназначено для администраторов серверов, ищущих последние улучшения производительности и готовых тестировать экспериментальный код.

29.04.2026
Лучшие моды для улучшения игрового процесса в Minecraft 2026

Лучшие моды для улучшения игрового процесса в Minecraft 2026

Моды для улучшения игрового процесса решают проблемы без изменения основной игровой механики. Они улучшают производительность, управление инвентарем, интерфейс и помощь в строительстве с помощью оптимизаторов, таких как Sodium, систем хранения, как Storage Drawers, и информационных дисплеев, как Waila.

17.07.2026

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