Добро пожаловать! FantasticCraft - Лицензионный minecraft сервер 1.20 для приятной игры без гриферов

Зарегистрируйся и получай приятное общение и бонусы на сервере!
  • Здравствуйте, друзья! Хотите чего-то нового? Ведь все эти надоевшие сервера с безграничным донатом, кучи неадекватных детишек уже порядком надоели! Это похоже на бездонную пропасть, полную мерзости и печали! но у всего есть конец! Вот и этой пропасти пришел конец! Вы встретили этот сервер! Вот вы спросите, чего такого в этом сервере?

    А я Вам отвечу:
    - Вы можете начать играть сразу без регистрации.
    - Наш сервер без гриферов. Любое гриферство и воровство запрещено.
    - Вы можете играть с любого клиента с лицензией (или запросить доступ без лицензии).
    - Наш сервер майнкрафт без дюпа и без 1000 лвла. Можно сказать ванильный майнкрафт сервер с минимальным количеством плагинов для приятной игры
    - На нашем сервере средний возраст игроков 18+, у нас самые адекватные взрослые майнкрафтеры.
    - У нас есть уникальные работы. Все работы строились без плагинов, вручную.
    - Есть разделение на гражданский и игровой миры.
    - Можно играть даже с мобильного устройства!
    Подробнее как начать играть...

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

    Но если вам надоел школьный ор, ругань, читерство и гриферство - тогда вам к нам! ;) У нас преимущественно аудитория 18+.

    Подходит? Тогда залетай к нам по ip: play.fantasticcraft.ru

Немного о производительности сервера Minecraft

milovidoff

Гражданин
milovidoff
milovidoff
Гражданин
Сообщения
113
Реакции
99
Баллы
425
Возраст
44
Имя
Александр
За 10 дней
6 часов
Я недавно играю на этом сервере, и вижу, что сервер хороший, сообщество приятное, только иногда все страдают от нехватки производительности. Лаги, просадка ТПС и прочие спецэффекты, которые уже можно отнести к разряду погодных явлений в мире Гамма. И я решил попробовать провести небольшое исследование на эту тему. Мне, как инженеру, всегда было интересно, как приложение утилизирует эти гигагерцы и гигабайты памяти. Учитывая, что у нас в кровавом энтерпрайзе приложения на Java - довольно частое явление, я подумал, что возможно, мой опыт их эксплуатации немного поможет в этом. Единственное, что я никогда не запускал сервер Minecraft, но это было легко исправить.

До того, как я начал его запускать, у меня был какой-то набор иллюзий по поводу его масштабируемости. В голове рисовалась стройная картина серверного приложения, которе можно распараллелить на n инстансов (возможно, даже в контейнерах), каждый из которых будет обслуживать к примеру 1-10 пользователей, и работать с одним хранилищем мира, которое, к примеру, находится в базе данных. Однако, реальность оказалась несколько более прозаичной. После того, как я поднял сервер PaperMC, я обнаружил, что он хранит данные мира в файлах. И я не знаю, могут ли несколько инстансов сервера работать с ними, не мешая друг другу. Нужно читать документацию и изучать передовой опыт (работают же как-то сервера на 1000+ пользователей? или такого не бывает?)

За рамками данного исследования осталось - как PaperMC распараллеливает треды по процессорным ядрам. Так или иначе, мне показалось, что единственный разумный способ как-то распилить этот монолит на части - сделать так, чтобы каждый мир обрабатывался отдельным сервером (желательно, на отдельной железке).

И наконец, немного поэкспериментировав с сервером на хостинге, я понял, что не знаю, как собирать с него метрики производительности. Локально, если бы у меня была возможность, я бы собирал метрики через JMX при помощи Telegraf, отправлял в InfluxDB, и просматривал в Grafana (в общем, всё как на любимой работе). Однако на этом хостинге я не могу запускать на сервере каких-то дополнительных приложений. И поиском я случайно нашёл плагин для сервера - Minecraft Prometheus Exporter (линк на github), который позволяет собирать метрики в Prometheus, и затем просматривать их в красивом виде в той же Grafana. Единственное, что я никогда не видел Prometheus, и для него понадобится отдельный сервер. Но это не преграды для инженера.

Для этого эксперимента я создал виртуальную машину в одном облаке. Установил на ней Prometheus и Grafana, немного повозился - и в результате сервер подключился к плагину Prometheus Exporter на сервере Minecraft, и собирает оттуда метрики по использованию памяти, tps, количеству мобов, загруженных чанков и т.д.

В Grafana, после импорта Dashboard от разработчика плагина, это выглядит так:

1610655146074.png

Выглядит достаточно неплохо - серверу выделен 1 Гб памяти, играет на нём 1 человек, и как-то всё это на нём помещается.
Интересно, как бы это выглядело на боевом сервере, и можно ли из этого извлечь какую-то пользу в плане понимания, чем он тормозит в данный конкретный момент времени.
 

Shtill

/╲/\╭[☉﹏☉]╮/\╱\
Гражданин
Shtill_
Shtill_
Гражданин
Сообщения
97
Реакции
182
Баллы
645
Возраст
31
Имя
Алексей
За 10 дней
0 часов
работают же как-то сервера на 1000+ пользователей? или такого не бывает?
В 12-13 годах играл на сервере с онлайном 200+ человек. Но там сервер был полностью переписан и никакой связи с официальным minecraft не имел. Этот сервер разработчики сами обновляли, придумывая свои "фишки". Ведь официальные обновления уже не вставали на него. И пошло ответвление в другой minecraft. Но всё же было интересно.
 

milovidoff

Гражданин
milovidoff
milovidoff
Гражданин
Сообщения
113
Реакции
99
Баллы
425
Возраст
44
Имя
Александр
За 10 дней
6 часов
Мне кажется, в ситуации с FC нужно собирать метрики в привязке к каждому пользователю. Там точно есть метрики (player metrics - experimental) по взаимодействию каждого игрока с блоками, мобами, использование предметов, и т.д. Но не уверен, что можно собирать метрики о мобах и механизмах, которые просто активировались рядом с игроком (в том числе есть ли возможность доработки плагина, чтобы собирать эти метрики).
 

МАБ

Багосоздатель
Команда форума
Админ
_mab
_mab
Админ
Сообщения
5.471
Реакции
3.074
Баллы
1.205
Возраст
30
Имя
Алексей
За 10 дней
0 часов
Я без метрик скажу. Уже об этом много раз писал.
У майна есть стандартное число тиков - 20. TPS - тики в секунду. Для нормальной работы нужно 20 тиков в секунду.
Что "нагружает тики"? Воронки раз в тик совершают некую операцию проверки своего состояния (даже если там ничего нет). Теперь промасштабируем это на кучу воронок, на кучу игроков, на все фермы и т.д.
Всё что движется - мобы, стойки (да они тикают) и прочее - всё потребляет эти тики. Соответственно при больших количествах всех сущностей (в том числе поршни, воронки и подобные "неживые" предметы) начинается просадка т.к. мощности машины (или тут в частности сама java) не хватает.
Я экспериментировал со многими конфигурациями и всегда прихожу к тому, что написал выше. Даже на диком железе оно всё равно улетит в зависоны. Особенно ярко это чувствовалось когда у нас не было ограничения мобов на чанк.
Если пользоваться всякими замедлителями, очистителями и прочим - это частично решает проблему (как минимум с мобами), но если сделать также с воронками, они сразу перестают нормально функционировать.
Я не настраивал ничего такого на самой java т.к. это может привести к странным последствиям, считаю что лучше каждый день рестартить сервер и соответственно очищать всё.
 

Paranoid

Гражданин
1Paranoid
1Paranoid
Гражданин
Сообщения
638
Реакции
693
Баллы
1.450
Возраст
37
За 10 дней
0 часов
Воронки раз в тик совершают некую операцию проверки своего состояния (даже если там ничего нет).
О_О
Т.е. любая установленная в мир воронка тянет ресурсы сервера одинаково? Независимо от того, передаёт что-то сейчас или нет?
 

МАБ

Багосоздатель
Команда форума
Админ
_mab
_mab
Админ
Сообщения
5.471
Реакции
3.074
Баллы
1.205
Возраст
30
Имя
Алексей
За 10 дней
0 часов
Ну скорее всего пустая будет чуть меньше потреблять. Если так подумать, ей только нужно проверять есть ли что на вход. Полным же нужно смотреть на ресурсы, количество и прочее.
 

Paranoid

Гражданин
1Paranoid
1Paranoid
Гражданин
Сообщения
638
Реакции
693
Баллы
1.450
Возраст
37
За 10 дней
0 часов
Однако... Вот и лаг-машинист один нашёлся, похоже. Тыкал воронки не жалея, т.к. активируются они у меня редко, думал что в другое время это просто блоки. Похоже, придётся мне систему хранения барахла у ферм поужать.
С другой стороны, при возвращении домой ТПС вроде заметно не проседал.
 

МАБ

Багосоздатель
Команда форума
Админ
_mab
_mab
Админ
Сообщения
5.471
Реакции
3.074
Баллы
1.205
Возраст
30
Имя
Алексей
За 10 дней
0 часов
Если не проседал - не очень критично. Думаю они минимально нагружают когда ничего не делают.
В основном на фермах рыбок, в рабочем состоянии, они могут быть опасны.
 

Paranoid

Гражданин
1Paranoid
1Paranoid
Гражданин
Сообщения
638
Реакции
693
Баллы
1.450
Возраст
37
За 10 дней
0 часов
У меня там фермы тростника и тыкв, активируются они по таймеру пару раз в игровые сутки, а потом выпавший дроп воронки раскидывают по нескольким десяткам сундуков.
 

Olifant

Команда форума
Полицейский
Olifanto
Olifanto
Полицейский
Сообщения
822
Реакции
495
Баллы
1.120
Возраст
31
Имя
Остап
За 10 дней
0 часов
Накрытые контейнерами (сундуками, воронками, компостерами, так далее) воронки гораздо меньше напрягают сервер, потому что отключается поиск обьектов для всасывания

Но при этом воронка еще будет проверять каждую ячейку контейнера. Поэтому если воронка не должна принимать ничего сверху, а только сбоку, идеальное решение накрыть ее компостером - там всего 1 ячейка для проверки =)

Кроме того неактивные воронки можно отключать. Неплохую реализацию этой механики можно посмотреть на ферме железа Juster (Mega Steven), на системе сбора лута. Там почти все воронки по умолчанию заблокированы, включаются когда в верхние поступает лут. Правда, система тогда немного странно пропускает лут, но работает)
 

Olifant

Команда форума
Полицейский
Olifanto
Olifanto
Полицейский
Сообщения
822
Реакции
495
Баллы
1.120
Возраст
31
Имя
Остап
За 10 дней
0 часов
Ну а так да, еще очень важно освещать свою територию, потому что мобы - злее воронок =)
 

Foreverinmyheart

Гражданин
Foreverinmyheart
Foreverinmyheart
Гражданин
Сообщения
42
Реакции
57
Баллы
995
Имя
Денис
За 10 дней
0 часов
В основном на фермах рыбок, в рабочем состоянии, они могут быть опасны.
Если Вы, имеете ввиду, ферму стражей в Дельте, то никакой просадки тпс, при нахождение на данной ферме, не наблюдалось! В данный момент, онлайн на сервере 9 человек, тпс 19.9! Ферма строилась в те времена, когда на сервере играло одновременно 20-25 человек! Никто не жаловался! Ферма работает за счёт водных потоков, количество воронок минимально! Стоят там лишь для сортировки лута!
 

SoBakaBareBaka

Злой и кусачий собакен
Гражданин
SoBakaBareBaka
SoBakaBareBaka
Гражданин
Сообщения
149
Реакции
134
Баллы
790
Возраст
27
Имя
Игорь
За 10 дней
0 часов
Однако... Вот и лаг-машинист один нашёлся, похоже. Тыкал воронки не жалея, т.к. активируются они у меня редко, думал что в другое время это просто блоки. Похоже, придётся мне систему хранения барахла у ферм поужать.
С другой стороны, при возвращении домой ТПС вроде заметно не проседал.

Я тебе больше скажу, есть такой вид гриферства - наставляют огромнейшее количество контейнеров, часто используют печки (в астрономических количествах), так как они дешевле и быстрее воронок, и всё это приводит к вылетам и просадкам тпс
 

zhenia_

Гражданин
Linmico
Linmico
Гражданин
Сообщения
62
Реакции
30
Баллы
975
Имя
Евгений
За 10 дней
0 часов
При проседании ТПС до 10 и меньше тепать на спавн по одному игроку и будет видно после кого значительно добавилось TПС. Далее смотреть что у него построено. На всех своих лично фермах я проверял, тепался на спавн, тпс не менялся.
 

Paranoid

Гражданин
1Paranoid
1Paranoid
Гражданин
Сообщения
638
Реакции
693
Баллы
1.450
Возраст
37
За 10 дней
0 часов
При проседании ТПС до 10 и меньше тепать на спавн по одному игроку и будет видно после кого значительно добавилось TПС. Далее смотреть что у него построено.
Насколько я понимаю, чанки после ухода игрока выгружаются не сразу, так что такого тепнутого надо будет в тюрячку сажать минут на 10, чтобы сразу домой не вернулся. Ну и другим приказать не бродить особо в это время, чтобы что-то другое не прогрузили.
Кстати, а отключённая сигналом редстоуна воронка ресурсы всё ещё жрёт? А сам редстоун, всякие повторители, провода и компараторы?
 

milovidoff

Гражданин
milovidoff
milovidoff
Гражданин
Сообщения
113
Реакции
99
Баллы
425
Возраст
44
Имя
Александр
За 10 дней
6 часов
Кстати, когда ТПС уже просажен, в момент автоматического сохранении мира просадка чувствуется особенно. Возможно, стоит посмотреть на дисковую подсистему.
Да, и если сервер не железный, а виртуальный - все соседние виртуальные машины могут влиять на производительность. Также различные долго идущие процессы типа бэкапов всей системы могут портить картину.

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

libbar

Вот так они и жили, спали порознь, а дети были…
Гражданин
libbar
libbar
Гражданин
Сообщения
68
Реакции
65
Баллы
615
Возраст
38
Имя
Сергей
За 10 дней
0 часов
Вопрос к знатокам… хочу переделать ферму цветов. Есть два варианта распихивания костной муки по раздатчикам - через кучку воронок - либо через выбрасыватели, как лучше сделать, чтобы не грузить сервер?
Воронки будут в любом случае, но их количество хочу свести к минимуму.
А вообще выбрасыватели сильно грузят сервер?
 

SylDrim

Гражданин
SylDrim
SylDrim
Гражданин
Сообщения
445
Реакции
429
Баллы
790
Имя
Наталья
За 10 дней
13 часов
Делай по возможности через водные пути - не ошибешься. Проблема не только в нагрузке на сервер, но и в том, что механизмы на том и другом подглючивают в последнее время в Дельте.
 

libbar

Вот так они и жили, спали порознь, а дети были…
Гражданин
libbar
libbar
Гражданин
Сообщения
68
Реакции
65
Баллы
615
Возраст
38
Имя
Сергей
За 10 дней
0 часов
Делай по возможности через водные пути - не ошибешься. Проблема не только в нагрузке на сервер, но и в том, что механизмы на том и другом подглючивают в последнее время в Дель
Делай по возможности через водные пути - не ошибешься. Проблема не только в нагрузке на сервер, но и в том, что механизмы на том и другом подглючивают в последнее время в Дельте.
Короче буду пробовать, а там увидим
 
shape1
shape2
shape3
shape4
shape7
shape8
Сверху