mosquitto
MQTT是IBM开发的一个即时通讯协议。MQTT是面向M2M和物联网的连接协议,采用轻量级发布和订阅消息传输机制。默认配置文件里设置的是1883端口进行通信的。
- 安装
pip install paho-mqtt
MQTT协议特点
相比于RESTful架构的物联网系统,MQTT协议借助消息推送功能,可以更好地实现远程控制。
MQTT协议角色
在RESTful架构的物联网系统,包含两个角色客户端和服务器端,而在MQTT协议中包括发布者,代理器(服务器)和订阅者。
MQTT协议消息
MQTT中的消息可理解为发布者和订阅者交换的内容(负载),这些消息包含具体的内容,可以被订阅者使用。
MQTT协议主题
MQTT中的主题可理解为相同类型或相似类型的消息集合。
简单测试
在本地开三个控制台去分别扮演(服务器、发布者、订阅者)
- 启动代理服务器
/usr/local/sbin/mosquitto -v # -v:表示打印更多的调式信息
- 开启订阅主题
mosquitto_sub -h localhost -t "pocket" # -h:表示本地ip地址 -t:表示主题
发布内容
mosquitto_pub -h localhost -t "pocket" -m "123" # -m:指定消息内容
然后就可以看到发布者发布内容后,订阅者那里就能收到,同时也能在代理服务器里看到一些信息。每次发布者发布前都会去连接,发布完后会断开连接。