Mqtt на Laravel с переполнением стека

Я использую MQTT на моей малине и на Ubuntu. Я использую терминал для начала подписчика и издателя, и он работает так хорошо. Но сейчас я хочу создать сайт (используя laravel) с этими функциями. Я гуглил это, но я не нахожу ничего интересного. Можно ли это сделать и как?

0

Решение

В отличие от HTTP, MQTT обычно используется, открывая длительное соединение между процессом приложения и сервером MQTT.

Хотя вполне возможно открыть соединение, опубликовать одно сообщение, а затем снова закрыть сокет, на самом деле оно не работает для подписки на поток сообщений.

Типичный режим работы PHP — запуск процесса, ожидание HTTP-соединения, обработка запроса и запуск нового процесса. Это плохо сочетается с типичным режимом MQTT с длительным процессом.

Это начало меняться с людьми, использующими встроенный HTTP-сервер PHP. Я не уверен, что Laravel предоставляет механизм для сохранения переменных / TCP-соединений между обработками запросов.

В качестве альтернативы можно подписаться на тему MQTT в долгосрочном PHP-скрипте CLI и сохранить его локально (например, в базе данных, хранилище KV, memcache, redis), а затем обслуживать данные из хранилища данных.

Это зависит от того, чего вы пытаетесь достичь.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]