- Загрузчики
- FabricNeoForgeForgeQuilt
- Скачиваний на Modrinth
- 24,5 млн
- Подписчиков на Modrinth
- 2,2 тыс.
- версий
- 119
- Обновлён
- 19 сентября 202619 сент.
- Опубликован
- в 2021
Коротко о моде
Работает и в игре, и на сервере — ставьте, где нужен

spark — это профайлер производительности для клиентов, серверов и прокси Minecraft.
Полезные ссылки
- Сайт — посмотреть домашнюю страницу проекта
- Документация — прочитать документацию и руководства по использованию
- Загрузки — последние загрузки плагинов/модов
Что делает spark?
spark состоит из трёх отдельных компонентов:
- Профайлер CPU: Диагностика проблем производительности.
- Инспекция памяти: Диагностика проблем с памятью.
- Отчёт о состоянии сервера: Отслеживание общего состояния сервера.
⚡ Профайлер CPU
Профайлер spark можно использовать для диагностики проблем производительности: «лагов», низкого тикрейта, высокой загрузки CPU и т. д.
Он:
- Лёгкий — может работать в продакшене с минимальным влиянием.
- Простой в использовании — не требует настройки или конфигурации, просто установите плагин.
- Быстро выдаёт результаты — работы всего ~30 секунд достаточно, чтобы получить полезную информацию о проблемных областях производительности.
- Настраиваемый — можно настроить на конкретные потоки, выборку с определённым интервалом, запись только «лагующих» периодов и т. д.
- Очень удобочитаемый — простая древовидная структура облегчает анализ и интерпретацию. Просмотрщик также может применять маппинги деобфускации.
Он работает путём выборки статистических данных об активности системы и построения графа вызовов на основе этих данных. Затем граф вызовов отображается в онлайн-просмотрщике для дальнейшего анализа пользователем.
Существует два разных движка профайлера:
- Нативный
AsyncGetCallTrace+perf_events— использует async-profiler (доступен только на системах Linux x86_64) - Встроенный Java
ThreadMXBean— улучшенная версия популярного профайлера WarmRoast от sk89q.
⚡ Инспекция памяти
spark включает ряд инструментов, полезных для диагностики проблем с памятью сервера.
Сводка кучи — сделать и проанализировать базовый снимок памяти сервера
- Простой просмотр кучи JVM, позволяет увидеть использование памяти и количество экземпляров для каждого класса
- Не предназначен для полной замены специализированных инструментов анализа памяти. (см. ниже)
Дамп кучи — сделать полный (HPROF) снимок памяти сервера
- Создаёт (и опционально сжимает) полный снимок кучи JVM.
- Этот снимок затем можно исследовать с помощью обычных инструментов анализа.
Мониторинг GC — отслеживание активности сборки мусора на сервере
- Позволяет пользователю связать активность GC с зависаниями игрового сервера и легко увидеть, сколько времени они занимают и сколько памяти освобождается.
- Наблюдайте частоту/длительность сборок мусора молодого/старого поколения, чтобы определить, какие флаги настройки GC использовать
⚡ Отчёт о состоянии сервера
spark может сообщать ряд метрик, обобщающих общее состояние сервера.
Эти метрики включают:
- TPS — тиков в секунду, с более точной степенью, указываемой командой /tps
- Длительность тиков — сколько времени занимает каждый тик (мин, макс и среднее)
- Использование CPU — сколько CPU используется процессом сервера и всей системой
- Использование памяти — сколько памяти используется процессом
- Использование диска — сколько дискового пространства свободно/используется системой
Помимо предоставления средних значений тиковой частоты, spark также может отслеживать отдельные тики — отправляя отчёт всякий раз, когда длительность одного тика превышает определённый порог. Это можно использовать для выявления тенденций и природы проблем с производительностью относительно других системных или игровых событий.
Использование
Для установки просто добавьте файл .jar в папку mods.
Информацию о том, как использовать команды, можно найти в документации.
Если вам нужна помощь в анализе отчёта профилирования или вы просто хотите пообщаться, присоединяйтесь к нам в Discord.
Руководства
В документации доступно несколько небольших «руководств», охватывающих следующие темы.
Частые вопросы
Как установить spark?
Установите Fabric под свою версию Minecraft, скачайте spark под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.
Для каких версий Minecraft есть spark?
У spark есть сборки для Minecraft 1.16.5, 1.17.1–26.3.
Нужен ли spark на сервере?
Работает и в игре, и на сервере — ставьте, где нужен