
2、create mybroker之后会在bin目录下生成mybroker文件夹,里面包含有很多信息,其中etc\apolloxml文件下是配置服务器信息的文件,etc\usersproperties文件包含连接MQTT服务器时用到的用户名和密码,后面会介绍,可以修改原始的admin=password,可以接着换行添加新的用户名密码。
3、打开cmd,运行…apache-apollo-16\bin\mybroker\bin\apollo-brokercmd run 开启服务器,可以在浏览器中输入>最近在着手研究使用网页控制硬件的交互过程,发现mqtt协议有很多种语言的封装,整个思路也很清晰,就是一个客户端进行发布和订阅+服务器中间代理的过程,于是开始学习使用MQTT框架搭建交互平台。
客户端使用了MQTTjs,服务器使用mosca(基于nodejs)。
QoS在MQTT中有(摘自 MQ 遥测传输 (MQTT) V31 协议规范 ):
MQTTjs只是支持了MQTT协议,并没有支持QoS,也就是说,只支持最低级别的“至多一次”(QoS0)。
在MQTT协议中,一个MQTT数据包由:固定头(Fixed header)、可变头(Variable header)、消息体(payload)三部分构成。
这里只了解消息体,固定头和可变头并不需要我们手动写。
payload消息体包含CONNECT、SUBSCRIBE、SUBACK、UNSUBSCRIBE四种类型的消息:
(1)Connect 与服务器建立连接。
(2)Disconnect 与服务器断开TCP/IP会话。
(3)Subscribe 订阅。
(4)UnSubscribe 取消订阅。
(5)Publish 发送消息请求,发送完成后返回应用程序线程。
二、实现(具体的API稍后呈现)没有安装mosquitto的可以看一下链接先安装一下
MQTT服务器搭建-mosquitto144安装指南
然后我们来安装php扩展
如果你已经使用预先建立的软件包来安装Mosquitto,你需要确保你已经安装了开发头文件。在红帽派生的系统上,这可能是叫做libmosquitto-devel,在基于 Debian的系统上叫做libmosquitto-dev。
你可以使用pecl来来安装这个拓展包:
pecl install Mosquitto-alpha
1
或者,你也可以使用常规的安装拓展的方法来安装:
phpize
/configure --with-mosquitto=/path/to/libmosquitto
make
make install
1
2
3
4
然后添加extension=mosquittoso到你的PHP配置文件phpini中。
--with-mosquitto
1
是可选参数,只有当安装程序找不到libmosquitto拓展包,才需要添加这个参数
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)