1.简单介绍mqtt
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议。
通俗来讲就像抖音,你去关注了这个创作者,然后他发布了视频,你就会收到他发布视频的通知。同理,如果那位视频作者也关注了你,你发布了一条视频,他也会收到你发布视频的通知。
其中你关注了视频发布者(订阅),视频发布者发布了一条视频(发布),当然通知会通过抖音提供的服务器转发给你。从这个的例子来讲,我们就不难理解MQTT的原理了。
原理:实现MQTT协议需要客户端和服务器端通讯完成,在通讯过程中,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)。其中,消息的发布者和订阅者都是客户端,消息代理是服务器,消息发布者可以同时是订阅者。
说白了就是发布者、订阅者、服务器,三者之间的关系。
2.简单入手加深原理理解
2.1 mqtt服务下载
地址:https://mosquitto.org/download/
2.2 安装启动服务
64位点击下载,下载后安装,安装好后就可以启动这个服务了。
打开cmd,在目录下输入mosquitto -c mosquitto.conf 或者mosquitto -d -v,我测试来看,mosquitto -d -v是有日志的。
2.3 订阅者订阅(Sub)
mosquitto_sub -t是订阅的命令语句, 'topic'是订阅的主题。
2.4 发布者发布(pud)
mosquitto_pub -t是发布命令,'topic'是发布的主题,kkk是发布的内容
2.5订阅者接收发布者发布的消息
红色框内是订阅者所接收到的信息