MQTT 入门介绍

举报
ReCclay 发表于 2022/02/22 00:52:32 2022/02/22
【摘要】 MQTT梗概 MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台...

MQTT梗概

MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和制动器(比如通过Twitter让房屋联网)的通信协议。

  • 使用发布/订阅消息模式,提供一对多的消息发布,解除应用程序耦合。

  • 对负载内容屏蔽的消息传输。

  • 使用 TCP/IP 提供网络连接。

  • 小型传输,开销很小(固定长度的头部是 2 字节),协议交换最小化,以降低网络流量。

  • 使用 Last Will 和 Testament 特性通知有关各方客户端异常中断的机制。 有三种消息发布服务质量:

    • “至多一次”,消息发布完全依赖底层 TCP/IP网络。会发生消息丢失或重复。这一级别可用于如下情况,环境传感器数据,丢失一次读记录无所谓,因为不久后还会有第二次发送。

    • “至少一次”,确保消息到达,但消息重复可能会发生。

    • “只有一次”,确保消息到达一次。这一级别可用于如下情况,在计费系统中,消息重复或丢失会导致不正确的结果。

总结来说MQTT只是一种消息推送的协议,而Apache Apollo是具有这种协议而开发的一款服务性的服务程序,被用来进行消息推送,同样的服务还有Mosquitto


详细介绍地址:http://blog.csdn.net/xukai871105/article/details/39252653


  • 【MQTT协议角色】——在RESTful架构的物联网系统,包含两个角色客户端和服务器端,而在MQTT协议中包括发布者,代理器(服务器)和订阅者。Publisher,Broker和Subscriber

  • 【MQTT协议消息】——MQTT中的消息可理解为发布者和订阅者交换的内容(负载),这些消息包含具体的内容,可以被订阅者使用。

  • 【MQTT协议主题】——MQTT中的主题可理解为相同类型或相似类型的消息集合。

这里写图片描述


MQTT服务器搭建

使用Apollo搭建MQTT服务器步骤:

1、下载Apollo服务器并解压,在CMD环境运行其工作目录下的 bin\apollo.cmd,命令后面带上参数「create mybroker」,创建服务器实例。这里需要Java环境,系统环境变量下要有JAVA_HOME。

2、创建实例之后会在bin目录下生成mybroker文件夹,其中 etc\apollo.xml 文件下是配置服务器信息的文件,etc\users.properties 文件包含连接MQTT服务器时用到的用户名和密码,初始默认帐号是admin,密码password;

3、进入 mybroker\bin\ 目录,在CMD输入命令「apollo-broker.cmd run」,可以使用TAB键自动补全,运行后输出信息如下:

这里写图片描述

其中我们要留意的:

MQTT服务器TCP连接端口:tcp://0.0.0.0:61613

后台登录接口:https://127.0.0.1:61681/或http://127.0.0.1:61680/

登录服务器后,如果MQTT服务器有客户端连接,后台会显示如下
这里写图片描述


一个有趣的应用

参考:Life in plain text

这里写图片描述


参考:
1、http://www.cnblogs.com/yangfengwu/p/7764667.html

2、http://blog.csdn.net/d_o_n_g2/article/details/77097115?locationNum=7&fps=1

3、https://lifeinplaintextblog.wordpress.com/nodemcu-led-strip-mqtt-express/

4、http://blog.csdn.net/yannanxiu/article/details/52703946

5、https://www.cnblogs.com/minyc/p/5127363.html

文章来源: recclay.blog.csdn.net,作者:ReCclay,版权归原作者所有,如需转载,请联系作者。

原文链接:recclay.blog.csdn.net/article/details/78952103

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。