Python中使用MQTT传输数据

MQTT的基础概念

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议,该协议构建于TCP/IP协议上,由IBM在1999年发布。MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。作为一种低开销、低带宽占用的即时通讯协议,使其在物联网、小型设备、移动应用等方面有较广泛的应用。

MQTT是一个基于客户端-服务器的消息发布/订阅传输协议,协议中有三种身份,如下图所示:

  • 发布者(Publish),客户端,消息发布者可以同时是订阅者
  • 代理(Broker),服务器端
  • 订阅者(Subscribe)客户端
MQTT的发布者、订阅者和代理

MQTT传输的消息分为:主题(Topic)和负载(payload)两部分:

  • Topic,可以理解为消息的类型,订阅者订阅(Subscribe)后,就会收到该主题的消息内容(payload);
  • Payload,可以理解为消息的内容,是指订阅者具体要使用的内容。
    更多信息参考《MQTT topic与payload的设计讨论》

MQTT的Python实战

https://mqtt.org/software/ 里面有关于MQTT的工具和软件
第一步:安装Mosquitto Broker代理服务器,这是由MQTT协议创始人之一的Andy Stanford-Clark开发的,下载链接:http://mosquitto.org/download/。 下载安装后,需要在Services里面启动Mosquitto Broker服务,Mosquitto服务默认占用1883端口

启动Mosquitto Broker服务

配置文件C:\Program Files\mosquitto\mosquitto.conf 文件中

第三步:使用Python paho API函数创建客户端

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容