Исправили производительность сервера и клиента и теперь все работает намного быстрее и стабильнее.
Что сделали?
Во-первых сделали сохранение карты мира асинхронно с главным потоком сервера, что перестало давать огромный фриз сервера во время сохранения карты, особенно это чувствуется, когда карты весит довольно много и на сервере много игроков онлайн. На самом деле очень странно, что эта функция выключена по умолчанию, но тем не менее, мы ее включили и лаг спайки исчезли.
Во-вторых немного обрезали кол-во чанков, которые прорисовывают игроки, так как по умолчанию значение слишком большое (радиус 10 чанков), что приводило к пролагиванием сервера, когда игрок прогружает новые территории.
Добавили пару модов на оптимизацию ИИ животных, чтобы не перегружать основной поток, когда на сервере много живности.
Сделали больший период проверки дропперов на наличие каких-либо вещей.
Увеличили размер того, как часто сервер сжимает пакеты, теперь это пачки по 512 пакетов, для снижения нагрузки на процессор.
Оптимизировали запуск и настроили G1 GC по флагам Aikar.
На клиенте поставили мод Farsight (доступен в лаунчере в опциональных модах), который позволяет загружать чанки, которые не прогружены на сервере в ваш клиент для увеличения прорисовки.
Так же установили фикс шейдеров для библиотеки Create — Flywheel, так как он в бете, то тоже вынесен в опциональные моды.
Добавили рекомендуемые флаги для запуска Minecraft с использованием G1 GC
Какой результат?
Результат более чем хороший: сервер теперь потребляет вменяемое количество оперативной памяти, сборщик мусора работает стабильно и не так часто, как это было до оптимизации, соответственно значительно снизилась нагрузка на процессор сервера и повысилась производительность главного потока сервера.
На клиенте значительно вырос фпс (на 20-30%), так как клиент больше не рендерит невидимые сущности, а с модом Create этих сущностей огромное количество.