Elca Server

Elca Server [Платно] 3.0

Нет прав для приобретения ("4 490.00" ₽)
89к строк исходников ~ (часть сгенерирована автоматически, а после дописана/переписана/исправлена но все-же)
Вам необходимо зарегистрироваться для просмотра изображений-вложений
 
256мб в стоке, 284мб в "разогретом", и 300мб с 1 игроком (Дальность прорисовки - 18, 388 чанков и 238 сущностей). В итоге около 16мб на игрока, если ограничить дальность прорисовки до 12, то будет около 10мб.

На Linux-оидах потребление оперативки должно быть еще ниже, тк JVM в 1 очередь оптимизируют под них

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

Подведу итоги: 16гб опеаративки вполне хватит на 1000 игроков на данном ядре
 
Последнее редактирование:
Улучшить сжатие трафика в своём ядре смогешь?
Чтобы на 100mbps интернет канала больше игроков выдерживало.
 
Улучшить сжатие трафика в своём ядре смогешь?
Чтобы на 100mbps интернет канала больше игроков выдерживало.

На "столе" лежит 2 проекта для оптимизации сетевой нагрузки.
1) Реализация специализированного CDN на базе velocity (или с 0 на Rust). Реализация отложена на данный момент, тк дешевле докупить интернет канал. (если и будет то только в EE)

2) Использование ZSTD вместо Deflate при сжатии пакетов +Client (на стадии вполне рабочего прототипа) в основную ветку не переношу в виду незначительного выигрыша (и на текущий момент неоптимальным алгоритмом использования памяти).

Есть так же 1 способ понизить сетевую нагрузку (подходит для всех серверов) - понизить среднюю высоту мира.
(например, в обычном мире высота в среднем 64-80 блоков, если сдвинуть этот промежуток на 48-64 то средний расход трафика будет ниже).
 
Последнее редактирование:
В процессе оптимизации заглянул в код динамита. Решил разрешить поджигать ТНТ всем горящим снарядам. Опционально
Почему бы и нет? Кинул горящее яйцо - в стопку динамита - получи бабах
 
HomaPlus обновил(а) ресурс Elca Server новой записью:

Обновление управления памятью 2.3.8.07

Детали обновления:
1) Около 65% коллекций заменены на ситуативно-более-эффективные аналоги собственной разработки. (В среднем на 30% меньше оперативки жрут, и на 10% процессора)
1.1) Понижение потребления оперативной памяти (Мобы)
2) Значительное повышение скорости расчета хитбоксов у блоков
3) Повышена эффективность использования памяти, значительно снижена нагрузка на GC (более чем в 5 раз)
4) Добавлено API для работы с авторизацией
5) Мелкие исправления, в основном связанные с...

Узнать больше об этом обновлении...
 
2.3.8.0.8
Перенастроил Progaurd, сделал его более "щедящим"

Чтобы не было проблем, если нужно будет вручную подключить оптимизацию Эльки в собственных модах
 
2.3.8.09
Обновил до актуальной версии
(Больше неточностей и относительных настроек. Данное поведение так же наследуют TsonBlocks, TsonItems, TsonBiomes, TsonTrees)

C-like:
Пример новой конфигурации. Все, что вне скобок - комментарии
Можно использовать относительные числа в конфигурациях
    +10, -15.5, *-3, и прочие мат. операции
    True,  T, Yes, Y, V, 1, +  -> true
    False, F, No,  N, X, 0, -  -> false

{
    time-packet-rate      = "*2",
    chunk-tick-radius-s   = "-16",
    chunk-tick-radius-m   = "+8",

    remove-error-entities = "V",
    skip-check-network    = "True",
    slow-swim-ai          = (true)
}
 
Последнее редактирование:
2.3.8.21
Вырезал Forge API для загрузчиков чанков (Оно кушало около 80% от тика всех блоков), и некоторые его модули. На их месте оставил заглушки, которые редиректят на собственное API, которое не имеет проблем с производительностью.

Модовые загрузчики чанков с вероятностью 50% будут работать некорректно (не приведет к ошибкам и аварийному завершению работы, просто потеряется функциональность), необходимо патчить
 
Последнее редактирование:
2.3.8.26
Исправлена ошибка (От 2.3.8.00), при которой была вероятность непредсказуемых телепортаций у лодки, если на нее сверху встал игрок
 
2.3.8.27
Улучшена модель ускорителя расчета AABB у блоков (От 2.3.8.00), изменен API
(Расчет коллизий у сложных блоков происходил медленнее, в связи с тем что Effective Lazy Cache не был задействован)
Процент использования ускорителя расчетов в модовых блоках без патча вырос (30% -> 45%)
 
2.3.8.29
Исправлена критическая ошибка (от 01.05.2024), в результате которой монстры, которые падают в бездну при определенных условиях вызывают резкое падение ТПС
 
2.3.8.30
Исправлена некритическая ошибка (от 15.02.2024), в результате которой при потоковой популяции чанков существовала вероятность того, что сущности попавшие в текучую воду в чанках, которые находятся в процессе популяции вызывают исключение

Увеличена вероятность попадания в Elca-кеш у сущностей (~87% -> ~93%)
 
Последнее редактирование:
2.3.8.31

Пробная перебазировка проекта с Forge на Cleanroom (поддержка java21)
 
Мой ответ на OutOfMemoryError: Среднее потребление оперативки на игрока включая чанки, монстров и прочее -16мб, куча пустого сервера - 100мб
Вам необходимо зарегистрироваться для просмотра изображений-вложений
 
2.3.8.34
Пул мировых потоков полностью заменен на Netty (Epoil) Event Pool
Переписана асинхронная загрузка чанков (от forge) на собственный эквивалент, который слегка быстрее и совместим с NEP
Сетевая логика и "мировая логика" использует общий пул потоков
 
2.3.8.37
Незначительно уменьшено потребление потребления оперативки на чанк
Дополнительно ускорен мировой спавнер сущностей на 30 - 35%, а так же уменьшено его потребление оперативки в 2 раза
EE Edition
В связи с тем, что очередные старые зависимости forge приказали долго жить, была создана резервная копии зависимостей репозиториев
Включено принудительное использование Mergetool 0.2.3.3 из резервных копий
 
2.3.8.38
Значительно ускорено удаление сущностей (при выгрузке чанка, смерти, когда подняли предмет, итд) на узлах с большим количеством мобов (в 50-100+ раз)
 
HomaPlus обновил(а) ресурс Elca Server новой записью:

Обновление LLV

Детали обновления:
1) Около 75% коллекций заменены на ситуативно-более-эффективные аналоги собственной разработки. (В среднем на 30% меньше оперативки жрут, и на 10% процессора)

2) Добавлены уровни загрузки сущностей (1 ближняя, 2 средняя, 3 дальняя, 4 очень дальняя)
3) Значительно ускорен трекер сущностей
4) Незначительные улучшения AI-задач
5) Незначительные улучшения работы с памятью у сущностей

В следующем обновлении:
Только багофикс и мелкие правки, в данном обновлении...

Узнать больше об этом обновлении...
 
2.4.0.2
Исправлена ошибка, в связи с которой некоторые "декораторы" биомов не использовали Элька-кеш
Исправлена ошибка, которая возникала при уничтожении деревень
 
Назад
Сверху Снизу