我在我的覆盆子和我的Ubuntu上使用MQTT。我使用终端作为初始订阅者和发布者,它的工作非常好。但现在我想创建一个具有此功能的网站(使用laravel)。我用谷歌搜索,但我没有发现任何有趣的东西。有可能吗?怎么做?
答案 0 :(得分:0)
与HTTP不同,MQTT通常用于打开应用程序进程和MQTT服务器之间的长时间连接。
虽然完全可以打开连接,发布单个消息然后再次关闭套接字,但它并不适用于订阅消息流。
PHP的典型操作模式是启动进程,等待HTTP连接,处理请求然后启动新进程。这与具有长时间运行过程的典型MQTT模式非常吻合。
这已经开始随着使用PHP内置HTTP服务器的人而改变。我不确定Laravel是否提供了一种在处理请求之间保持变量/ TCP连接的机制。
或者,可以在长时间运行的CLI PHP脚本中订阅MQTT主题并在本地持久保存(例如数据库,KV存储,内存缓存,redis),然后从数据存储区提供数据。
这很大程度上取决于你想要达到的目标。