Задача

Требуется разработать бэкенд-систему для мониторинга игровых серверов. На каждом сервере установлен плагин, который поднимает HTTP endpoint. Система должна опрашивать этот endpoint, собирать данные и работать с десятками и сотнями серверов.

Требования к функционалу

  • Опрос endpoint'ов: Периодически отправлять HTTP-запросы к плагину на каждом контролируемом сервере и извлекать показатели состояния и метрики.
  • Сохранение метрик: Все полученные статусы и данные должны сохраняться в базу данных для дальнейшего анализа и отображения истории.
  • Отказ от старой авторизации: Устраните устаревшую и недописанную проверку “права собственности на сервер” через временную смену имени сервера на ключ. Замените этот механизм на нормальную схему аутентификации для подтверждения владения сервером при его добавлении.
  • Масштабирование: Реализовать архитектуру, позволяющую добавлять новые машины с воркерами для распределения нагрузки при опросе сотен серверов (пакетная обработка заявок между воркерами). Организовать взаимодействие воркеров с центральной базой данных.
  • Перспектива развития: Итоговое решение должно легко мастшабироваться при увеличении числа подконтрольных серверов, распараллеливая нагрузку на разные инстансы.

Технический стек

  • Язык: Java (при разработке плагина можно подразумевать, но бэкенд может быть на любом языке вроде Python, Go или Java)
  • Протокол: HTTP к endpoint плагина.
  • Дополнительно: PostgreSQL/MySQL/public-cloud ready.
  • Распределение: Поддержка Kafka/Redis или очередей для передачи заданий воркерам.

Настройка перехода с QR-кода на страницу заведения в Яндекс Картах

Требуется настроить QR-код для сбора отзывов в ресторане. Код должен перенаправлять в приложение Яндекс Карты при сканировании через него, и в браузерную версию сервиса - при сканировании через камеру телефона.