mqtt第一次接触

一、接触的原因

  公司最近要求接手关于系统集成道闸的部分,其中系统和第三方系统是通过mqtt进行交互的。所以提前了解一下mqtt的基础概念。

二、mqtt的基本概念

  1. mqtt的定义

    Message Queuing Telemetry Transport,消息队列遥测传输协议。它是基于tcp/ip协议的,同时它的设计模式是采用的发布/订阅模式。

  2.mqtt协议中的成员:发布者、代理和订阅者。

   (1)发布者:发布者可以发布信息给其它客户端(订阅者)订阅,它发布的一个主题消息可以被订阅多次。

   (2)代理:代理又称为服务器,可以接受来自发布者或订阅者的连接,同时能够处理订阅者的订阅或退订请求,还能够将发布者发布的消息推送给订阅者。

   (3)订阅者:能够接受来自发布者发布的信息,能够退订。

  3.常用概念

   (1)订阅:订阅包含主题筛选器(Topic Filter)和服务质量(QoS)。订阅可以与会话关联,一个会话可以关联多个订阅。

     (2)会话:客户端与服务器建立连接就是一个会话。

     (3)主题:消息的类型,订阅者通过订阅的主题接受发布者发布的消息。

   (4)负载:订阅者接收到的消息。

   (5)服务质量:发布消息的质量,保证消息传递的次数。

      a.至多一次:只发送一次,消息可能会丢失,在传感器传输数据时,数据会定时刷新发送,数据的丢失不是那么的重要,可以使用该服务质量。

      b.至少一次:保证订阅者能够接收到发送的消息,这种情况下消息可能重复。

      c.只有一次:确保订阅者接收消息一次,不会重复也不会丢失。

三、安装EMQ服务器

  1.我使用的是windows 10版本的。点击这里进入下载页面。

  2.下载后解压,进入解压文件夹,在cmd中输入bin\emqx.cmd start启动服务器。

  3.我的服务器是安装在本地的,在Web中输入127.0.0.1:18083可以显示控制台。

  4.客户端测试工具-MQTTBox。

四、java测试订阅发布,在这里就不细述,网上博客很多。

五、相关博客

https://www.runoob.com/w3cnote/mqtt-intro.html

https://www.jianshu.com/p/e5cf0c1fd55c

https://blog.csdn.net/zhu_tianwei/article/details/49178167

posted @   qee  阅读(334)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
点击右上角即可分享
微信分享提示