Разработка серверной платформы для управления IoT-устройствами
Требуется создать надежное и масштабируемое серверное решение для управления большой сетью IoT-устройств, использующих протокол MQTT для связи.
Контекст проекта
В рамках проекта необходимо обеспечить централизованное управление сетью, состоящей из 40 000 устройств. Каждое устройство представляет собой аппаратную платформу на базе микроконтроллера ESP32 S2.
Основные задачи серверной части
- Обеспечение стабильного подключения и двустороннего обмена данными с устройствами по протоколу MQTT.
- Обработка, валидация и сохранение данных, поступающих от устройств.
- Отправка команд и конфигураций на устройства.
- Масштабируемость архитектуры для поддержки указанного количества активных подключений.
- Организация локальной части системы (on-premise или в приватном облаке).
- Работа с данными, хранящимися в памяти устройств (логи, состояния, метрики).
Требования к решению
- Архитектура должна быть отказоустойчивой и рассчитанной на высокую нагрузку.
- Необходимо предусмотреть механизмы мониторинга состояния устройств и серверной инфраструктуры.
- Решение должно быть документировано и развернуто.
Исполнителю необходимо предложить оптимальную технологическую стек и архитектуру для реализации данной задачи.