Перейти к содержанию
Admin

Разбор полётов по загрузке сервера

Рекомендуемые сообщения

В этой теме предлагаю обсуждать загрузку сервера на основе статистики Спигот.

Инфа на сайте Спигота - тык.

Туториал на бакките - тык.

Общие принципы - тык.


Туториал на гитхабе:
https://github.com/YouHaveTrouble/minecraft-optimization

 

Чтобы получить отчёт, необходимо последовательно выполнить следующие команды либо из игры, либо в консоли:

 

- /timings on
- /timings merged
- /timings paste
- в результате получается сслыка;

 

+ вопрос: какой должен быть интервал между выполнениями этих команд и между какими, чтобы получить достаточно большой отчётный период?

 

 

Итак, вот есть первый отчёт по моментально выполненным командам.

 

Отчетный период - это же интервал между запуском и остановкой создания отчета. Отчетный период - лучше брать около суток, причем желательно застать вот такой онлайн, человек 10 хотя бы.

 

 

Советы бывалых:

 

Скрытый текст

 

NonNK:

 

Как настроить спавн мобов в спиготе могу рассказать, но у вас с мобами и так проблема, судя по вот тому, моментальному отчету. Он не показателен, но все же.

В спиготе очень своеобразные настройки стакания - лут зачастую улетает за стены в схемы ферм и тд. По сравнению с баккитом 2,5куба:1

Изменены тайминги хопперов, тайминги урожая, отрисовка и активность мобов и игроков в блоках

Изменить спавн на ванильный можно вполне - но надо сначала понять, откуда у вас в мире столько энити, которые страшно грузят, судя по первому отчету.

 

Если решите сменить прорисовку на 10, у народа могут перестать работать автовагонетки на дальних дистанциях, но в целом - прирост должен быть ощутимым.

За счет сэкономленных ресурсов железа - советую поправить отрисовку-обнаружение  мобов и их активность ближе к ванильной, т.к. если оставить настройки спигота по умолчанию - никто не сможет выполнить ачивку "дуэль со скелетом". А кальмаров очень советую прикрутить. Елс их количество с 5 снизить на 2 - они почти перестают спавниться в лужах в чистом поле, но в океане - их все равно, как... как багов в майне, не меньше))

Не говоря уже о том, что в 1.6 зомби, по идее, должны обнаруживать игроков на дистанции 40 блоков, это же часть хардкора как и криперы, за которыми я замучилась ремонтировать ландшафт.

 

 

Это значит, что если вы и далее хотите содержать старую карту - нужно увеличивать мощности хостинга(

Поясню: за весь отчетный период данные обобщаются. В среднем на сервере было менее 3х человек, то есть какое-то время он работал вообще без нагрузки, потом зашли 5+ человек и скушали половину процессорного времени просто на обработку мира. У вас сам мир очень много потребляет по-видимому.

Я НЕ знаю, какие характеристики вашего хоста, не знаю, есть ли в серверлоге ошибки обработки чанков.

Если есть, сбрось мне их в личку, Вельвет, я посмотрю, сталкивалась ли с такими.

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

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

А вот что странно - у вас слишком мало откусывают энити зомби. Возможно, это связано с урезанными настройками активности и обнаружения мобов.

Поясню: после того, как в 1.6. моджанги слегка перестарались с интеллектом зомбей, мы все даже стали шутить, что они скоро начнут прокапываться к нам на склад и тырить вещи из сундуков.

А если без шуток, то: у нас, при загрузке в 40 человек по всему миру - все энити создавали около 24% от общей нагрузки. А 21% из этих 24х - откусывал ИИ зомби. Долго искала инфу - оказывается, это нормально.

В сборках ядра 1095 -1098 ИИ зомби был вообще огромной проблемой, разработчики конечно быстро пофиксили к 1100, но большая нагрузка должна быть - это нормально. В 95-98 несколько групп зомби, зациклившиеся на поиске пути к игроку вызывали падение производительности до 8-10 тпс, а у слабых машин вообще случался коллапс. После фикса таких проблем не случается, но у вас в отчете налицо - огромная загруженность от каких-то других энити, надо смотреть подробнее, потому что если включите настройки для зомби "пованильнее" - энити загрузят сервер по уши.

Ну и с активацией у вас проблема. Это то, что проверяется и обсчитывается через определенные промежутки времени. Редстоун-схемы, или те же ком блоки.

+ кто-то отличился и наспавнил многовато курятины, судя по отчету.

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

И да, мое личное мнение, не претендующее на истину.. На нулевом чанке лучше не ставить ни защищенных сундуков, ни редстоун-схем, ни тем более, комблоков. В соседнем чанке - ноу проблем)

 

Да, карту можно держать и 2 года, но проблем будет все больше, запретов для игроков вводить придется тоже больше и больше (тот же тнт), и лаги будут нарастать в прогрессии. Рано или поздно - чанки при выгрузке сохраняются с ошибками, и все больше и больше грузят сервер. Пример простым русским языком: гигантская редстоун-схема с допустим, 100-150 поршней, не будет лагать на новой, свежей карте. Постепенно вокруг нее начнет падать фпс у некоторых игроков. Еще через полгода - в районе этих чанков у игроков начнутся непонятные фризы до до 0 фпс и полного вылета. Пример слишком утрирован, но думаю, понятен.

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

 

Большие фермы-башни вообще не слишком хорошие схемы сами по себе, так как одновременно работает много поршней и дропается большое кол-во предметом. Хотя с настройками стакания спигота (2,5) если вы их не меняли, грузит не так уж и сильно. Ошибки могли кстати быть из-за ошибок стакания.

А вообще, подобные сообщения часто касаются переименнованных предметов и мобов. Будет информация точнее, сразу же напишу вам.

 

 

 

 

Скрытый текст

 

Оптимизация сервера
 
Вот подробное руководство по оптимизации вашего сервера цапфы!
Имейте в виду, для оптимизации и стабилизации сервера стоит использовать инструмент  Spigot Timings собирая статистику при максимальной нагрузке на сервер. 

 

 

1. PaperSpigot & paper.yml
PaperSpigot представляет собой набор патчей для ядра Spigot которые существенно оптимизирует сервер  и добавляет дополнительные настройки с помощью файла paper.yml.

Вы можете скачать PaperTools,  который является эквивалентом BuildTools по данной ссылке:

Запустите paperspigot.jar, как вы это делаете с обычным ядром spigot.jar (собственно PaperSpigot и является ядром сервера) . 
После запуска, сервера сгенерирует в корневой папке три yaml файла: 
  • spigot.yml
  • paper.yml
  • bukkit.yml

Используя эти файлы мы и будем вести настройку. 

 

Для начала откройте paper.yml:

Следует снизить параметр despawn-ranges, если у вас слишком много мобов (в противном случае оставьте это по умолчанию).

 

Измените значение на true следующих параметров:

use-async-lighting
optimize-draining

Это позволит оптимизировать  параметры потока жидкости и обрабатывать освещение асинхронно.

Примечание: Некоторые из этих параметров были вырезаны в paperspigot, в более поздних версиях и больше не настраиваются в конфигурационном файле (как они всегда активированы).

 

Если у вас на сервере совершается много действий с redstone схемами, воронками, вагонетками... еtс , снижение параметра tick-next-tick-list-cap может помочь в повышении производительности.

 

2. Spigot.yml & Bukkit.yml

 

Spigot.yml & bukkit.yml являются файлами, которые генерирует сервер  Bukkit/Spigot умолчанию. Они позволяют нам настроить такие параметры как:  лимит сущностей(entity), кол-во сущностей(entity) за тик, обработку мира  и другое.

Откройте  spigot.yml. Здесь мы сможем выжать максимум производительности из сервера. Найдите раздел "world-settings".

 

Во-первых, отключите анти-Xray, если вы действительно им не пользуетесь. Обычно данная функция аказывает до  5% нагрузки на сервер. Это не самый прожорливый функционал, но его отключение может дать серьезный прирост производительности.
Вы можете попробовать в качестве альтернативы более конфигурируемый  анти-Xray, например.
 
Параметр: nerf-spawner-mobs может быть установлен на true, если ваш сервер не полагаться на агрессивных мобов, которые появляются с помощью спаунеров. Если у вас есть многоспаунеров нейтральных мобов (фермы и тд) и вы редко используете спаунеры агрессивных, активация этой функции даст серьезное увеличение производительности. 
 
 
entity-activation-range
Стандартные значения: (animals: 32, monsters: 32, misc: 16)
Описание: Устанавливает радиус в блоках, в пределах которых сущности будут "активными" - объекты за пределами этого диапазона будет тикать по сниженному рейту, чтобы предотвратить сервера отставание.
Я предлагаю использовать такие параметры:
  1. entity-activation-range:
  2. animals: 8
  3. monsters: 10
  4. misc: 2

Misc регулирует  радиус элементов рам, картин, выброшенных предметов, шаров опыта и табличек. Я установил этому параметру значение "2", для предотвращения  их движения по воде. Параметры animals: 8 monsters: 10 не означают что мобы будут выгружены, они будут активны(за один тик), но с более низким рейтом (читаем подробнее, что такое тик).

 

entity-tracking-range
Стандартные значения: (players: 48, animals: 48, monsters: 48, misc: 32, other: 64)

Устанавливает радиус в блоках, в пределах которых сущности будут видимыми для клиента. Субъекты за пределами этого диапазона будут невидимы и не будут обработаны железом клиента чтобы сохранить загрузку процессора и пропускную способность. Это особенно полезно для ПВП серверов, а снижение параметров для игроков исключит  wallhacks и радар в некоторой степени. Misc регулирует радиус элементов рам, картин, выброшенных предметов, шаров опыта и табличек. Other устанавливает максимальный предел для всех субъектов на вашем сервере.

entity-tracking-range:  не влияет на производительность сервера, но влияет производительность на стороне клиента. Я хотел бы предложить оставить его нетронутым.
  1. entity-tracking-range:
  2. players: 48
  3. animals: 48
  4. monsters: 48
  5. misc: 32
  6. other: 64

ticks-per:

↳ hopper-transfer

Стандартное значение: 8
Описание: Период времени в 1 тик, между тем как воронка активируется и перетянет вещи в сундук. При стандартном значении воронка активируется и перетаскивает в сундук предметы раз в 8 тиков.
 

↳ hopper-check (Удалено в версии  1.8.3  March, 8th 2015)
Стандартное значение: 8
Описание: Период времени в 1 тик, - за который воронка анализирует кол-во предметов вокруг нее. К примеру при значении 8, воронка будет проверять инвентарь сундука и наличие предметов вокруг нее раз в восемь тиков. 

Значение по умолчанию равно 8, поэтому установка его в 24 означает, что процесс активации будет происходить в три раза реже. Что сократит общее время активности воронок. (внимание изменение данной функции может привести к неправильной работе некоторых механизмов, которые строят ваши игроки) 

 

Я советую установить вот такие значения: 

  1. ticks-per:
  2. hopper-transfer: 24
  3. hopper-check: 24
  4. hopper-amount: 3

max-entity-collisions
Стандартное значение: 8
Описание: Данный параметр устанавливает лимит сущностей  в одной точке, я предлагаю установить значение 2 или даже 1. 

 

item-despawn-rate

Стандартное значение: 6000
Описание: Данный параметр устанавливает время в тиках, по прошествии которого брошенные на землю предметы исчезнут.

При стандартном значении предметы будут исчезать через 6000:20=300 секунд. Данный параметр регулируется индивидуально для каждого сервера. 

 

merge-radius:

↳ exp
Стандартное значение: 3.0
Описание: Устанавливает радиус в блоках, когда шарики опыта будут объединены в один стак. 

↳ item
Стандартное значение: 2.5
Описание: Устанавливает радиус в блоках, когда предметы одной группы будут объединены в один стак. 

 

Предлагаю вот такие параметры:

  1. merge-radius:
  2. item: 4
  3. exp: 6

 

view-distance
Стандартное значение: 10
Описание: Контролирует количество блоков, которые будут загружены вокруг каждого игрока. Это значение не может быть выше , чем 15 или ниже , чем 1. Понижение это может снизить нагрузку на сервер , если у вас есть большое количество игроков онлайн.

 

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

 

chunks-per-tick

Стандартное значение: 650
Описание: Контролирует количество чанков, которые будут обновлены для роста культур(фермерам на заметку) за один тик . Снижение этого параметра уменьшает нагрузку на сервер и замедляет рост культур соответственно. Я предлагаю установить значение "80" что примерно в восемь раз ниже.

growth:

 x-модификатор

где x это = cactus, melon, pumpkin, sapling, cane, mushroom, wheat

Стандартное значение: 100
Type: Integer
Описание: Контролирует скорость роста определенной культуры.

При снижении параметра chunks-per-tick в восемь раз до 80, мы увеличим значения роста каждой культуры до "800" ( восемь раз соответственно)  что даст нам стандартную скорость роста, при этом сократив кол-во обновленных чанков. 

Устанавливаем параметры на: 

  1. growth:
  2. cactus-modifier: 800
  3. cane-modifier: 800
  4. melon-modifier: 800
  5. mushroom-modifier: 800
  6. pumpkin-modifier: 800
  7. sapling-modifier: 800
  8. wheat-modifier: 800

 Помните, что параметры chunks-per-tick и growth взаимосвязаны и если вы уменьшили кол-во обновленных чанков, при этом оставив без изменения параметр growth(100) то вы снизите скорость роста в восемь раз и наоборот. 

 

Переходим к файлу bukkit.yml 

 

 

Параметр spawn-limits. Отвечает за общее кол-во мобов, которые будут отспаунены для одного игрока. Я предлагаю такие значения: 

  1. spawn-limits:
  2. monsters: 50
  3. animals: 10
  4. water-animals: 3
  5. ambient: 4

Я снизил параметр ambient: 4, тк. Кол-во летучишь мышей никак не влияет на геймплей. 
Чем больше игроков играют на сервере, тем ниже можно опускать данные значения повышая при этом производительность сервера. 

 

Также рекомендую установить значения параметра ticks-per:

  1. ticks-per:
  2. animal-spawns:400
  3. monster-spawns: 3
  4. autosave: 3000

В частности, я изменил monster-spawns с 1 до 3. Это интервал между событием mobSpawn , который будет определять места и порождать монстров . Если mobSpawn собирает много циклов в ваших таймингах советую увеличить данные значения!

 

chunk-gc это небольшая функция spigot которая отключена по умолчанию. Для включения, установите параметры:

  1. chunk-gc:
  2. period-in-ticks: 300
  3. load-threshold: 300
  4.  

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

собрал инфу по таймингам за сутки

 

Кто знает, что всё это значит и что можно сделать с улучшением ситуации?? :)

 

Что я там увидел:

 

 - деревенские жители сжирают всего 0.5% чего-то от всего: 0.49%     0.51%    469.25 s     0.25 ms     3.1     5,713.1k     tickEntity - EntityVillager

 

 - не должно быть просадок TPS, т.к. мы не достигаем 100%: 54.24%    49,784.98 s     27.12 ms     1.0     1,835.8k     Full Server Tick Full Server Tick is the best representation of your servers performance, in the Pct Tick Column. If this value hits 100%, then your server is unable to keep up and will begin losing TPS

 

 - кто-то развёл много кроликов (надеюсь, новый закон поможет частично решить эту проблему): 7.83%     8.13%    7,460.77 s     4.06 ms     18     32,124.0k     tickEntity - EntityRabbit

 

 - можно чутка поднастроить сервер (чтобы мобы дольше не реагировали на игроков?): 19.94%     20.71%    19,008.22 s     10.35 ms     582    1,069,031.0k     Activated Entities Spigot introduces a major feature called Entity Activation Range that lets you specify ranges away from a player that an entity will enter "inactive" state, meaning it will slow down its activity. Any inactive entity will reduce its performance cost by up to 95%! This can be a major savings in terms of performance on servers that have lots of entities.

 

 

 

- вчера были какие-то глюки с баном игроков (сервер вылетал и игроков выкидывало): .10%    47,383.91%     94.77 s    23,691.95 ms     0.0     0.0k     Command: ban

 

 

- динмпа: 0.52%     9.84%    496.08 s     4.92 ms     0.1     100.8k     Task: Unknown(Single)

  • Плюс 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Давайте все вместе побъём Хофа?

1. За то, что грузит серв;

2. За то, что всегда говорит, что это не он :)

 

acfSSnr.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Давайте все вместе побъём Хофа?

1. За то, что грузит серв;

2. За то, что всегда говорит, что это не он :)

acfSSnr.png

Он фармит! Но побить можно :D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Сегодня произошла ужасная ситуёвина - при онлайне 21 игрок TPS проседал до 7-10...
При этом поверхностная проверка выявила, что почти никто ничего особого не делал - игроки просто играли (3-5 игроков афкашили) = проблема с производительностью железа и настройками сервера.

 

В первую очередь, я планирую сменить тариф и/или хостинг, чтобы повысить производительность самого железа.

К сожалению, для меня на это нужно много времени - несколько часов и у меня нет гарантированных этих часов, чтобы решить все вероятные проблемы перехода.

Поэтому железо будем менять как-нибудь когда-нибудь...

 

На данный момент были произведены настройки этих параметров сервера на основе данной статьи:

 

  • anti-Xray (выключил, но я бы оставил включенным, если всё остальное поможет)
  • entity-activation-range
  • max-entity-collisions
  • merge-radius
  • view-distance (6)
  • chunks-per-tick + growth
  • spawn-limits (ещё меньше, чем рекомендовано)
  • ticks-per
  • chunk-gc
  • анти-афк (15 мин)

 

К сожалению, это экстренные меры и всё надо корректировать.
Однако, предлагаю недельку последить за производительностью сервера при таких настройках.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Тобишь для обычного игрока:

Афк больше 15мин - вылет

Мобов ещё меньше

Прорисовка макс 6 (?)

А что ещё?

  • Минус 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Мои поздравления - пока всё чётко :)

На сервере 21 игрок, а TPS просел всего до 18+ и то - в пике, а в среднем все эти 3 часа держится больше 19.5 )))

 

[18:27:35] [server thread/INFO]: TPS from last 1m, 5m, 15m: 18.27, 19.26, 19.47

 

Если всё будет в порядке, то завтра попробую увеличить количество слотов до 25, а ещё через несколько дней - до 30.
Если результаты будут положительными, то попробую вернуть anti-Xray. Если и дальше всё будет приемлемо, то попробуем увеличить дальность прорисовки до 8 или даже 10 (последние месяцы было 10).

 

UPD:

 

[18:50:17] [server thread/INFO]: TPS from last 1m, 5m, 15m: 17.81, 18.48, 19.05

Изменено пользователем Admin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Так, немного поднастроил сервер:
 

entity-activation-range:

monsters: 8 (вместо 10)

 

включил обратно anty X-ray

 

spawn-limits:

monsters: 50 (видимо, увеличив это значение с 30 до рекомендуемых 50 я увеличил спаун мобов, на который жаловались, что мобов стало мало)

animals: 10 (также увеличил спаун животных, видимо, в частности лошадей - с 3 до рекомендуемых 10)

 

 

ticks-per:

 
  monster-spawns: 3 (также, видимо, уменьшил задержку спауна монстров с 5 до рекомендуемых 3, а стандартно - 1)
 

 
Также поковырял динмапу:

# If nonzero, server will pause fullrender/radiusrender processing when 'fullrenderplayerlimit' or more users are logged in
fullrenderplayerlimit: 5 (мы почти не пользуемся фулрендером - последний раз год назад - но теперь он будет возможен и при 5-ти игроках, а ранее - при 2 и менее)
# If nonzero, server will pause update render processing when 'updateplayerlimit' or more users are logged in
updateplayerlimit: 10 (теперь карта будет апдейтится даже при онлайне 9 игроков, а раньше только при 4 и меньше)
# If TPS of server is below this setting, update renders processing is paused
update-min-tps: 16.0 (теперь апдейт карты не будет происходить при TPS ниже 16, а раньше при меньше 18 уже останавливался)
# If TPS of server is below this setting, full/radius renders processing is paused
fullrender-min-tps: 16.0 (тоже самое)
# If TPS of server is below this setting, zoom out processing is paused
zoomout-min-tps: 16.0 (тоже самое)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

После предыдущей настройки и возврата живности пошли жалобы, что опять TPS проседает.

Если будет повторяться, то временно придётся вернуть более жёсткие настройки, когда мобов будет мало.

 

Переход на хостинг всё-таки не в ближайшее время, хоть я и перешёл на оплату текущего хостинга только на след. месяц - именно из-за планов его сменить (оплата на год выгоднее на 15%).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

Так, немного поднастроил сервер:

 

entity-activation-range:

monsters: 8 (вместо 10)

 

включил обратно anty X-ray

 

spawn-limits:

monsters: 50 (видимо, увеличив это значение с 30 до рекомендуемых 50 я увеличил спаун мобов, на который жаловались, что мобов стало мало)

animals: 10 (также увеличил спаун животных, видимо, в частности лошадей - с 3 до рекомендуемых 10)

 

 

ticks-per:

 
  monster-spawns: 3 (также, видимо, уменьшил задержку спауна монстров с 5 до рекомендуемых 3, а стандартно - 1)

 

Откатил эти изменения: после ночного рестарта TPS должен быть постабильнее и играть должно быть комфортно при 15-20+ игроках в онлайне.

 

Следующим этапом улучшения производительности сервера - это смена хостинга. Но это и по настройке надо потестить и по деньгам в 2-2.5 раза больше (вроде, протестировали на спец.торгах) :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Итак, тестим новый хостинг :)
На основе этой статьи.

 

включил обратно anty X-ray (думаю, не помешает)

 

  entity-activation-range:

      animals: 8 (было 4, стандарт - 32)
      monsters: 32 (было 8, стандарт - 32)
      misc: 2 (без изменений, стандарт - 16)
 
 
    view-distance: 8 (стандарт - 10, было - 6, решил пока сильно не увеличивать)
 
 
   growth: (снизил скорость роста с 800, т.к. игроки даже комментили, что на нашем сервере всё быстро растёт, а я бы хотел наоборот - усложнить игру, в частности, замдлением роста, чтобы фермерство было усзкоспециализированной профессией, сложной и высокооплачиваемой)
      cactus-modifier: 400
      cane-modifier: 400
      melon-modifier: 400
      mushroom-modifier: 400
      pumpkin-modifier: 400
      sapling-modifier: 400
      wheat-modifier: 400
      netherwart-modifier: 400
 
 
spawn-limits: (увеличил значения до рекомендуемых - если сервер будет справляться, я бы увеличил количество агресивных мобов)
  monsters: 50 (было - 25, стандарт - хз)
  animals: 10 (было - 3, стандарт - хз)
  water-animals: 3 (было - 2, стандарт - хз)
  ambient: 1
 
ticks-per:
  animal-spawns: 300 (было - 400, рекомендуется 400, стандарт - хз)
  monster-spawns: 1 (было - 3, рекомендуется - 3, стандарт - 1)
  autosave: 6000

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ещё немного изменил

 

    max-entity-collisions: 2 (было - 1, стандарт - 8)

 

 

    growth: (было - 400, стандарт - 100, но для нормальной скорости роста)
      cactus-modifier: 200
      cane-modifier: 200
      melon-modifier: 200
      mushroom-modifier: 200
      pumpkin-modifier: 200
      sapling-modifier: 200
      wheat-modifier: 200
      netherwart-modifier: 200
 
 
spawn-limits:
  monsters: 100 (было - 50, стандарт - хз)

 


 

Вот такую ошибочку выдало...
Интересно - это из-за количества мобов?
Например, тупо оператива заполнилась?

[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:219)
[14:44:31 ERROR]: io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Chunk I/O Executor Thread-1
[14:44:31 ERROR]: PID: 52 | Suspended: false | Native: false | State: WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: sun.misc.Unsafe.park(Native Method)
[14:44:31 ERROR]: java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
[14:44:31 ERROR]: java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
[14:44:31 ERROR]: java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
[14:44:31 ERROR]: java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
[14:44:31 ERROR]: java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
[14:44:31 ERROR]: java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Netty Epoll Server IO #2
[14:44:31 ERROR]: PID: 25 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: io.netty.channel.epoll.Native.epollWait(Native Method)
[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.epollWait(EpollEventLoop.java:194)
[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:219)
[14:44:31 ERROR]: io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: File IO Thread
[14:44:31 ERROR]: PID: 49 | Suspended: false | Native: false | State: TIMED_WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Thread.sleep(Native Method)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.FileIOThread.c(FileIOThread.java:52)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.FileIOThread.run(FileIOThread.java:28)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Netty Epoll Server IO #1
[14:44:31 ERROR]: PID: 24 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: io.netty.channel.epoll.Native.epollWait(Native Method)
[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.epollWait(EpollEventLoop.java:194)
[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:219)
[14:44:31 ERROR]: io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Query Listener #1
[14:44:31 ERROR]: PID: 45 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Thread is waiting on monitor(s):
[14:44:31 ERROR]: Locked on:java.net.PlainDatagramSocketImpl.receive0(Native Method)
[14:44:31 ERROR]: Locked on:java.net.AbstractPlainDatagramSocketImpl.receive(AbstractPlainDatagramSocketImpl.java:143)
[14:44:31 ERROR]: Locked on:java.net.DatagramSocket.receive(DatagramSocket.java:812)
[14:44:31 ERROR]: Locked on:java.net.DatagramSocket.receive(DatagramSocket.java:812)
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.net.PlainDatagramSocketImpl.receive0(Native Method)
[14:44:31 ERROR]: java.net.AbstractPlainDatagramSocketImpl.receive(AbstractPlainDatagramSocketImpl.java:143)
[14:44:31 ERROR]: java.net.DatagramSocket.receive(DatagramSocket.java:812)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.RemoteStatusListener.run(SourceFile:261)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Java2D Disposer
[14:44:31 ERROR]: PID: 33 | Suspended: false | Native: false | State: WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Object.wait(Native Method)
[14:44:31 ERROR]: java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
[14:44:31 ERROR]: java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
[14:44:31 ERROR]: sun.java2d.Disposer.run(Disposer.java:148)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Netty Epoll Server IO #0
[14:44:31 ERROR]: PID: 22 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: io.netty.channel.epoll.Native.epollWait(Native Method)
[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.epollWait(EpollEventLoop.java:194)
[14:44:31 ERROR]: io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:219)
[14:44:31 ERROR]: io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Spigot Metrics Thread
[14:44:31 ERROR]: PID: 21 | Suspended: false | Native: false | State: TIMED_WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Object.wait(Native Method)
[14:44:31 ERROR]: java.util.TimerThread.mainLoop(Timer.java:552)
[14:44:31 ERROR]: java.util.TimerThread.run(Timer.java:505)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Spigot Watchdog Thread
[14:44:31 ERROR]: PID: 20 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: sun.management.ThreadImpl.dumpThreads0(Native Method)
[14:44:31 ERROR]: sun.management.ThreadImpl.dumpAllThreads(ThreadImpl.java:454)
[14:44:31 ERROR]: org.spigotmc.WatchdogThread.run(WatchdogThread.java:76)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Server console handler
[14:44:31 ERROR]: PID: 17 | Suspended: false | Native: true | State: RUNNABLE
[14:44:31 ERROR]: Thread is waiting on monitor(s):
[14:44:31 ERROR]: Locked on:java.io.BufferedInputStream.read(BufferedInputStream.java:265)
[14:44:31 ERROR]: Locked on:org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:261)
[14:44:31 ERROR]: Locked on:org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:198)
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.io.FileInputStream.readBytes(Native Method)
[14:44:31 ERROR]: java.io.FileInputStream.read(FileInputStream.java:255)
[14:44:31 ERROR]: java.io.BufferedInputStream.fill(BufferedInputStream.java:246)
[14:44:31 ERROR]: java.io.BufferedInputStream.read(BufferedInputStream.java:265)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.NonBlockingInputStream.read(NonBlockingInputStream.java:248)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:261)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.internal.InputStreamReader.read(InputStreamReader.java:198)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readCharacter(ConsoleReader.java:2145)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readLineSimple(ConsoleReader.java:3183)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readLine(ConsoleReader.java:2333)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readLine(ConsoleReader.java:2269)
[14:44:31 ERROR]: org.bukkit.craftbukkit.libs.jline.console.ConsoleReader.readLine(ConsoleReader.java:2257)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.DedicatedServer$2.run(DedicatedServer.java:81)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Thread-4
[14:44:31 ERROR]: PID: 18 | Suspended: false | Native: false | State: WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: sun.misc.Unsafe.park(Native Method)
[14:44:31 ERROR]: java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
[14:44:31 ERROR]: java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
[14:44:31 ERROR]: java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
[14:44:31 ERROR]: com.mojang.util.QueueLogAppender.getNextLogEvent(QueueLogAppender.java:77)
[14:44:31 ERROR]: org.bukkit.craftbukkit.v1_8_R3.util.TerminalConsoleWriterThread.run(TerminalConsoleWriterThread.java:25)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: DestroyJavaVM
[14:44:31 ERROR]: PID: 16 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Server thread
[14:44:31 ERROR]: PID: 14 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: org.dynmap.snakeyaml.scanner.Constant.has(Constant.java:63)
[14:44:31 ERROR]: org.dynmap.snakeyaml.reader.StreamReader.forward(StreamReader.java:124)
[14:44:31 ERROR]: org.dynmap.snakeyaml.scanner.ScannerImpl.scanToNextToken(ScannerImpl.java:971)
[14:44:31 ERROR]: org.dynmap.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:235)
[14:44:31 ERROR]: org.dynmap.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:179)
[14:44:31 ERROR]: org.dynmap.snakeyaml.parser.ParserImpl$ParseImplicitDocumentStart.produce(ParserImpl.java:198)
[14:44:31 ERROR]: org.dynmap.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:161)
[14:44:31 ERROR]: org.dynmap.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:146)
[14:44:31 ERROR]: org.dynmap.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
[14:44:31 ERROR]: org.dynmap.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:121)
[14:44:31 ERROR]: org.dynmap.snakeyaml.Yaml.loadFromReader(Yaml.java:480)
[14:44:31 ERROR]: org.dynmap.snakeyaml.Yaml.load(Yaml.java:423)
[14:44:31 ERROR]: org.dynmap.ConfigurationNode.load(ConfigurationNode.java:86)
[14:44:31 ERROR]: org.dynmap.DynmapCore.initConfiguration(DynmapCore.java:389)
[14:44:31 ERROR]: org.dynmap.bukkit.DynmapPlugin.onEnable(DynmapPlugin.java:825)
[14:44:31 ERROR]: org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:321)
[14:44:31 ERROR]: org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:340)
[14:44:31 ERROR]: org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:405)
[14:44:31 ERROR]: org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugin(CraftServer.java:357)
[14:44:31 ERROR]: org.bukkit.craftbukkit.v1_8_R3.CraftServer.enablePlugins(CraftServer.java:317)
[14:44:31 ERROR]: org.bukkit.craftbukkit.v1_8_R3.CraftServer.reload(CraftServer.java:741)
[14:44:31 ERROR]: org.bukkit.Bukkit.reload(Bukkit.java:535)
[14:44:31 ERROR]: org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:25)
[14:44:31 ERROR]: org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141)
[14:44:31 ERROR]: org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchCommand(CraftServer.java:641)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1162)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:997)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13)
[14:44:31 ERROR]: java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
[14:44:31 ERROR]: java.util.concurrent.FutureTask.run(FutureTask.java:266)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557)
[14:44:31 ERROR]: java.lang.Thread.run(Thread.java:745)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Server Infinisleeper
[14:44:31 ERROR]: PID: 15 | Suspended: false | Native: false | State: TIMED_WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Thread.sleep(Native Method)
[14:44:31 ERROR]: net.minecraft.server.v1_8_R3.DedicatedServer$1.run(DedicatedServer.java:54)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Snooper Timer
[14:44:31 ERROR]: PID: 11 | Suspended: false | Native: false | State: TIMED_WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Object.wait(Native Method)
[14:44:31 ERROR]: java.util.TimerThread.mainLoop(Timer.java:552)
[14:44:31 ERROR]: java.util.TimerThread.run(Timer.java:505)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Signal Dispatcher
[14:44:31 ERROR]: PID: 4 | Suspended: false | Native: false | State: RUNNABLE
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Finalizer
[14:44:31 ERROR]: PID: 3 | Suspended: false | Native: false | State: WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Object.wait(Native Method)
[14:44:31 ERROR]: java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
[14:44:31 ERROR]: java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
[14:44:31 ERROR]: java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)
[14:44:31 ERROR]: ------------------------------
[14:44:31 ERROR]: Current Thread: Reference Handler
[14:44:31 ERROR]: PID: 2 | Suspended: false | Native: false | State: WAITING
[14:44:31 ERROR]: Stack:
[14:44:31 ERROR]: java.lang.Object.wait(Native Method)
[14:44:31 ERROR]: java.lang.Object.wait(Object.java:502)
[14:44:31 ERROR]: java.lang.ref.Reference.tryHandlePending(Reference.java:191)
[14:44:31 ERROR]: java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)
[14:44:31 ERROR]: ------------------------------
[14:44:31 INFO]: Startup script './start.sh' does not exist! Stopping server.

 

Ну, или будем надеяться, что это из-за нелюбимой мною команды reload...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Игроки комментят, что:

  • мобов стало многовато (это приемлемо)
  • сила их не очень большая (иначе совсем ад будет)
  • стало подлагивать

 

Из-за подлагиваний снизил нагрузку на клиент игрока:

 

    entity-tracking-range:
      players: 32 (было - 48, стандарт - 48)
      animals: 24 (было - 48, стандарт - 48)
      monsters: 32 (было - 48, стандарт - 48)
      misc: 16 (было - 32, стандарт - 32) - этот параметр влияет на расстояние, на котором начинают быть видны рамки
      other: 48 (было - 64, стандарт - 64)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Продолжаю эксперименты с настройкой

 

 

    growth: (уменьшил в два раза по сравнению со стандартом, стандарт - 100, было - 200)
      cactus-modifier: 50
      cane-modifier: 50
      melon-modifier: 50
      mushroom-modifier: 50
      pumpkin-modifier: 50
      sapling-modifier: 50
      wheat-modifier: 50
      netherwart-modifier: 50
 
 
spawn-limits: (было - 100, стандарт - хз, но наверное меньше 100 и даже 75)
  monsters: 75
 
    entity-tracking-range: (изменил расстояние, на котором видны рамки, стандарт - 32, было - 16, сделал - 64) - вероятно, это увеличит нагрузку на клиент
      misc: 64
 
  • Минус 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оцелот, у нас тут проблемасы с TPS...

Либо ты что-то новое в ЦНС сделал, а там прям много чего нового для меня :)

Либо это версия 1.9.4, либо ещё хрен знает что...

 

На сервере было меньше 10 игроков и TPS резко просел до 8-10.

Визуальный осмотр ничего не выявил.

 

Запустил проверку таймингов:

http://www.spigotmc.org/go/timings?url=16350390

 

И 11 мая:

http://www.spigotmc.org/go/timings?url=16357653

 

 

Инфа на русском может быть найдена по ссылке в первом посте или тут.

 

Оцелот, что делать?

Как реанимировать производительность? :)

 


 

Уменьшил дальность прорисовки до 6 - вообще не помогло.

Методом тыка выяснил, что это из-за зоны спауна: после рестарта сервера я был один и подключилась Вирао - я телепортнулся к ней и тпс тут же вырос до 19. Телепортнулся на спаун - ТПС снова начал резко падать...

 

Оцелот, а это может быть из-за ивента Нападение?

Может, какие кб без остановки теперь работают?

 

UPD: блин, а сейчас всё норм - 19+...

 


 

А вообще - немного напрягает, что у нас на спауне 300+ сущностей и какой-то космический крестик:

 

XExAdEA.png

 

A1Bjgwg.png

 

 

Изменено пользователем Admin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Оцелот, у нас тут проблемасы с TPS...

Либо ты что-то новое в ЦНС сделал, а там прям много чего нового для меня :)

Либо это версия 1.9.4, либо ещё хрен знает что...

 

На сервере было меньше 10 игроков и TPS резко просел до 8-10.

Визуальный осмотр ничего не выявил.

 

Запустил проверку таймингов:

http://www.spigotmc.org/go/timings?url=16350390

 

Инфа на русском может быть найдена по ссылке в первом посте или тут.

 

Оцелот, что делать?

Как реанимировать производительность? :)

 


 

Уменьшил дальность прорисовки до 6 - вообще не помогло.

Методом тыка выяснил, что это из-за зоны спауна: после рестарта сервера я был один и подключилась Вирао - я телепортнулся к ней и тпс тут же вырос до 19. Телепортнулся на спаун - ТПС снова начал резко падать...

 

Оцелот, а это может быть из-за ивента Нападение?

Может, какие кб без остановки теперь работают?

 

UPD: блин, а сейчас всё норм - 19+...

 


 

А вообще - немного напрягает, что у нас на спауне 300+ сущностей и какой-то космический крестик:

 

XExAdEA.png

 

A1Bjgwg.png

 

 

 

Насчёт космического крестика.

Решила я проверить, что это. Эндерпёрлы на спавне в рюкзаке чистятся, потому решила просто построиться к нему и попытаться войти в него.

У меня получилось, но никуда меня не телепортировало, потому либо нужны эндерпёрлы, либо это не портал.

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

 

nvechzk.png   NIEZFvU.png   6UDcW6F.png

 

CKaBIxY.png   3QYucEP.png   LuxDwly.png

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Крестик это типо ивент Оцелота только что бывший походу

Изменено пользователем Grig_Kosilov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Снова поднастроил сервер:

  • дальность прорисовки 6
  • entity-activation-range:
    • animals: 8
    • monsters: 10
    • misc: 1
  • entity-tracking-range:
    • players: 48
    • animals: 48
    • monsters: 48
    • misc: 32
    • other: 64
  • merge-radius:
    • item: 4
    • exp: 6
  • max-entity-collisions: 1
  • spawn-limits:
    • monsters: 50
    • animals: 10
    • water-animals: 3
    • ambient: 1
  • ticks-per:
    • animal-spawns: 600
    • monster-spawns: 3
  •  

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Это... Можно повысить дальность прорисовки мобов и игроков?

А то в аду ты бегаешь, тебя мочит гаст, а ты его даже не видишь, т.к. он не прорисовывается.

Изменено пользователем Grig_Kosilov

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Достижения

Это... Можно повысить дальность прорисовки мобов и игроков?

А то в аду ты бегаешь, тебя мочит гаст, а ты его даже не видишь, т.к. он не прорисовывается.

Это сделано.

За эту настройку отвечает параметр entity-tracking-range, который ранее был меньше, а теперь увеличен до стандартного значения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Что-то ни фига не работает...

На сервере 2 игрока, а TPS = 12 и прям стабильно держится на этой цифре не зависимо от количества игроков...

 

Отчёт - тык.

Попробовал задать вопрос у чувака, который накатал мануал по настройке сервера, но он уже несколько месяцев не появлялся на форуме...

 

P.S.: А вдруг это на хостинге проблемы? Вряд ли, конечно... Скорее всего, это сраные кб и древняя карта + возможно, 1.9.4 под соусом Спигота...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Знаете, я тут покурил отчёт из предыдущего поста и что я там увидел (ориентируемся на "Pct Total"):

  • основная проблема в Entity в разных проявлениях (world - tickEntities, tickEntity, world - entityTick, Activated Entities и т.д.)
  • world - tickEntities (72%): основная проблема у нас в обычном мире и с сущностями
    • Full Server Tick (99%): полный пипец с общей производительностью сервера
      • tickEntity (60%): не очень понятно, что это, но оно юзает ресы сильно, и вероятно это всё сущности и съедают они 60% ресурсов сервера
        • world - entityTick (59%): снова не очень понятно, чем отличается от предыдущего значения? Возможно, это означает, что из предыдущего значения 59% приходится на мир "world" и всего 1% на другие миры (ад)
          • Activated Entities (56%): если я правильно понимаю, то из 59% в предыдущем пункте 56% сжирают "активированные сущности" (вчера я уменьшал количество "активированных сущностей" параметром "entity-activation-range"; косяк только в том, чту у нас эти значения итак меньше рекомендуемых)
            • livingEntityAIMove (23%): видимо, это затраты ресурсов на обработку ИИ движения живых сущностей (мирные и враждебные мобы)
            • entityMove (21%): опять что-то с перемещениями сущностей
              • tickEntity - EntitySheep (15%): это уже более интересная информация - надо попробовать найти кучу овец
              • tickEntity - EntityCow (10%): и кучу коров
              • tickEntity - EntityChicken (8%): заодно куриц
              • tickTileEntity - TileEntityHopper (8%): воронки жрут
              • tickEntity - EntityHorse (7%): и лошадей
              • tickEntity - EntityPig (4%): заодно можно свинюшек поискать
                 
              • tickEntity - EntityZombie (2%): а вот и впервые встретились враждебные мобы
              • tickTileEntity - TileEntityChest (2%): и сундуки
  • world - doTick (13%): пока не знаю, что такое doTick применительно к конкретному миру, но когда-нибудь до этого доберёмся
  • world_nether - doTick (10%): тоже самое

 

В общем, попробую разобраться с живностью и по возможности с воронками.

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

 

Для начала попробую точечно (по ограниченному радиусу) уничтожать живность из списка выше.

 


 

UPD:

Начали чистку ферм живности на ничейных территориях:

  • James026 (~300 коров, овец, куриц = нарушение закона о лицензировании деятельности)

 

На всякий сделал отчёт при идеальном ТПС - тык.

Изменено пользователем Admin

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×