spark-web-api для Minecraft: локальний веб-інспектор продуктивності сервера
Технічні параметри розширення:
Назва проекту: spark-web-api (spark Web Viewer / API)
Автор розробки: lucko (Luck) та команда spark
Сумісні платформи: Paper
Версії Minecraft: 1.20.4 – 1.21.x
Залежності: spark
Основне призначення: Локальне автономне розміщення (Self-hosting) веб-інтерфейсу профілювання без вивантаження даних на публічні сервери
При аналізі продуктивності серверів Minecraft за допомогою популярного профілювальника spark, за замовчуванням згенеровані звіти вивантажуються на публічний веб-сервіс spark.lucko.me. Проте для комерційних проектів, приватних мереж та великих серверних комплексів передача дампів пам'яті, списків плагінів та внутрішніх шляхiв файлової системи на сторонні ресурси є небажаною з міркувань безпеки та конфіденційності.
Розширення spark-web-api від розробника lucko дозволяє розгорнути власний автономний (Self-Hosted) веб-сервер для перегляду профілів spark безпосередньо у вашій локальній мережі або на власному домені. У цьому розширеному посібнику аналізуються можливості spark-web-api, детальний розбір конфігурації, налаштування безпеки та покрокова інструкція із запуску.
1. Навіщо потрібен spark-web-api та як він працює
Головний плагін spark вимірює навантаження на процесор (CPU), використання оперативної пам'яті (RAM), серверні такти (TPS) та виклики потоків Java.
Переваги використання spark-web-api:
Повна конфіденційність даних (Data Privacy):
Звіти профілювання містять назви файлів, версії плагінів, дампи потоків та UUID гравців. spark-web-api гарантує, що жоден байт цієї інформації не залишить ваш сервер.
Автономна робота без інтернет-з'єднання (Offline / Private Network):
Ідеально підходить для локальних тестових серверів або приватних корпоративних мереж без доступу до зовнішньої мережі Інтернет.
Власний брендований домен (Custom Domain & Base URL):
Адміністратор може налаштувати видачу посилань на власний веб-сайт (наприклад,
https://spark.myserver.net/profile?id=xyz).
Контроль доступу та ключів API:
Обмеження перегляду звітів лише для авторизованого персоналу за допомогою ключів доступу чи авторизації.
2. Порівняння публічного переглядача та self-hosted spark-web-api
Параметр порівняння | Публічний сервіс ( | Автономний |
|---|---|---|
Хостинг даних | Публічні хмарні сервери розробника | Власний сервер адміністратора |
Потреба в Інтернеті | Обов'язкове зовнішнє підключення | Працює повністю офлайн / у локальній мережі |
Конфіденційність | Потенційна видимість за прямим посиланням | Повний контроль доступу та приватність |
Налаштування домену | Суворо | Будь-який власний домен або локальна IP-адреса |
Швидкість завантаження | Залежить від загального навантаження хмари | Миттєва у локальній мережі |
3. Детальний розбір конфігураційного файлу
Після встановлення розширення у папці plugins/spark/ або config/spark/ з'являються налаштування інтеграції з веб-сервером.
Ключові параметри конфігу spark-web-api:
{
"enabled": true,
"bind-address": "0.0.0.0",
"port": 8080,
"base-url": "http://spark.myserver.com:8080/",
"api-key": "secret-admin-token-12345",
"max-profiles-stored": 100
}Розшифровка кожного параметра:
enabled(true/false): Вмикає або вимикає локальний веб-сервер HTTP.bind-address: Мережевий інтерфейс для зв'язування (значення0.0.0.0дозволяє підключення з будь-якої IP-адреси, а127.0.0.1обмежує доступ лише локальним ПК).port: Порт HTTP-сервера за замовчуванням (наприклад,8080або4567). Переконайтеся, що порт відкритий у фаєрволі.base-url: Шаблон посилання, яке відображатиметься у чаті гри при виконанні команди/spark profiler open. Вкажіть тут ваш домен або публічну IP-адресу з портом.api-key: Секретний токен для захисту REST API від несанкціонованого перегляду чужими користувачами.max-profiles-stored: Ліміт збережених файлів звітів.sparkprofileна диску перед їх автоматичною очисткою.
4. Покрокова інструкція зі встановлення та запуску
spark-web-api є розширенням для основного профілювальника spark, тому перед його запуском переконайтеся, що сам spark упевнено працює на вашому сервері.
Кроки зі встановлення:
Завантажте основний плагін/мод spark з Modrinth та помістіть його у папку
plugins(для Paper) абоmods(для Fabric/Forge).Завантажте розширення spark-web-api з Modrinth.
Перемістіть завантажений файл у папку
pluginsабоmods.Перезапустіть сервер для генерації файлів конфігурації.
Відкрийте конфігураційний файл, вкажіть потрібний
portтаbase-url.Збережіть файл та виконайте команду перезавантаження
/spark reload.
Перевірка роботи:
Виконай команду запису профілю:
/spark profiler start.Зачекайте 30–60 секунд та зупиніть запис:
/spark profiler stop.У чаті з'явиться посилання, що вказує на ваш власний веб-сервер. Натисніть на нього для відкриття інспектора у браузері.
5. Поширені питання та відповіді (FAQ)
1. Посилання генерується, але браузер пише "Не вдається отримати доступ до сайту"
Вирішення: Переконайтеся, що вказаний у конфігу порт (наприклад,
8080) прокинуто на роутері або дозволено у фаєрволі сервера (UFW / Windows Firewall). Також перевірте, чи правильно вказаноbind-address: 0.0.0.0.
2. Чи можна використовувати spark-web-api з проксі-серверами (NGINX / Cloudflare)?
Так, ви можете налаштувати зворотний проксі (Reverse Proxy) через NGINX або Caddy, щоб додати шифрування HTTPS (SSL-сертифікат) та приховати порт веб-сервера.
3. Чи споживає spark-web-api багато ресурсів сервера?
Ні, локальний HTTP-сервер є надзвичайно легким і спить у фоновому режимі, активуючись лише під час відкриття сторінки звітів у браузері.
Встановлення
Типове встановлення займає близько 5 хвилин. Порядок однаковий; відрізняються лише лоадер і відповідна збірка.
- 1Stop your Minecraft server.
- 2Drop the plugin .jar into the server /plugins folder.
- 3Start the server once so the plugin generates its config files.
- 4Edit /plugins/<name>/config.yml as needed, then run /reload confirm or restart.











