Попробуйте Visual Studio Code — там как минимум последний год хорошо работает отладчик C/C++-кода при установке расширения «C/C++». По функциям, виду и поведению очень похоже на Visual Studio на Windows.
Да, инструменты рефакторинга кода пока слабо развиты, но как минимум Go To Definition хорошо работает.
После перехода мобильного устройства в состояние ожидания происходит закрытие всех веб-сокетов.
Да, это как раз то, для чего придумывались не-clean-сессии в MQTT.
А ещё, если брокер поддерживает retain сообщения — можно хранить в них состояние приложения, и оно будет автоматически синхронизироваться между всеми клиентами. Получится этакая облачная БД для приложения.
И не смотрели ли Вы в сторону следующей версии стандарта, MQTT 5.0?
Там как раз добавлено время хранения не-clean-сессии и сообщений, произвольные user property сообщений, shared subscriptions для балансировки нагрузки брокером, и много чего ещё.
Жаль только пока далеко не все брокеры поддерживают этот стандарт, и в основном это облачные решения (SaaS)
Спасибо за статью!
Стоило бы добавить, что описанный механизм по доставке недополученных сообщений после восстановления соединения обеспечивается именно параметром cleanSession: false. Кроме того, не каждая реализация MQTT-брокера поддерживает такие не-clean-сессии.
А еще есть активно развивающаяся альтернатива библиотеке Paho mqtt клиента для браузера и nodejs — github.com/mqttjs/MQTT.js
Да, инструменты рефакторинга кода пока слабо развиты, но как минимум Go To Definition хорошо работает.
flespi.io/covid19
Да, это как раз то, для чего придумывались не-clean-сессии в MQTT.
А ещё, если брокер поддерживает retain сообщения — можно хранить в них состояние приложения, и оно будет автоматически синхронизироваться между всеми клиентами. Получится этакая облачная БД для приложения.
И не смотрели ли Вы в сторону следующей версии стандарта, MQTT 5.0?
Там как раз добавлено время хранения не-clean-сессии и сообщений, произвольные user property сообщений, shared subscriptions для балансировки нагрузки брокером, и много чего ещё.
Жаль только пока далеко не все брокеры поддерживают этот стандарт, и в основном это облачные решения (SaaS)
Стоило бы добавить, что описанный механизм по доставке недополученных сообщений после восстановления соединения обеспечивается именно параметром cleanSession: false. Кроме того, не каждая реализация MQTT-брокера поддерживает такие не-clean-сессии.
А еще есть активно развивающаяся альтернатива библиотеке Paho mqtt клиента для браузера и nodejs — github.com/mqttjs/MQTT.js