Задача

Разработать backend-систему мониторинга для игровых серверов. Система должна периодически отправлять HTTP-запросы к специальному endpoint, предоставляемому Java-плагином на каждом сервере, собирать метрики (состояние сервера, количество игроков и т.д.) и сохранять их в базу данных. Важно обеспечить возможность проверки прав собственности сервера (исключить непроверенные источники) и организовать распределённое выполнение запросов с помощью очередей и воркеров.

Основные требования

  • Периодический опрос (пинг) HTTP endpoint на каждом сервере
  • Сохранять полученные метрики и статусы в базе данных (рекомендуется PostgreSQL или MongoDB)
  • Реализовать проверку “права собственности сервера”: верификация, что сервер действительно принадлежит владельцу
  • Обработка сотен серверов с помощью очередей и воркеров (например, на базе RabbitMQ, Redis Queue или аналогичных решений)
  • Архитектура должна позволять запускать несколько воркеров на разных машинах для горизонтального масштабирования
  • Возможность интеграции с уже существующим кодом - Java-плагином HytaleQuery
  • Разработать API для доступа к данным: получение последнего статуса сервера, история метрик, статистика

Дополнительные детали

В рамках разработки также требуется “вырезать” незавершённую часть с правами собственности с веб-стороны и реализовать её на backend. Для периодичности можно использовать cron или планировщик внутри приложения (например, Celery Beat). Предпочтительный язык - Python (с фреймворками FastAPI или Django Rest Framework), но возможно и Ruby / PHP. От исполнителя ожидается готовность к испытанию масштаба - предполагается размещение сотен серверов, включённых в систему.

Контакты в описании отсутствуют; никакие конкретные бренды или URL не указываются.