MQTT 1——物联网集成项目技术选型与说明

最近做的JAVA项目与物联网设备有集成,记录一下从技术选型到实现,整合:


1.通信协议技术选型,MQTT技术介绍
2.MQTT服务端安装,客户端测试
3.MQTT客户端与Spring MVC整合


 

1.项目整体架构介绍:
JAVA服务端(以下简称服务端):部署在外网,提供固定IP地址+端口的访问;
物联网设备(以下简称终端):部署在各个不同区域,联网方式也可能是:WIFI,物联网卡中任意一种;


2.通信协议选择
  HTTP:作为主流的WEB上使用的协议,简单,直接,上手度快;但是HTTP作为单向的短链接协议,无法解决本次对接碰到到两个问题:
         1)本次对接不仅仅是单向终端到服务端的接口,还有大量的需要服务端向终端发布执行指令,而采用HTTP协议,势必终端需要不间断的向服务端去轮询以获取最新的指令,如果会有大量空跑的网络请求,影响网络与服务器性能;

         2)HTTP作为WEB端常用的协议,因为本身头中带的信息量就比较大,不太适用网络环境不稳定的情况;

  MQTT: 之前没有接触过这样的协议,是由对方硬件工程师提出的。是目前物联网设备间比较主流采用的通信协议。
     MQTT特点天生完美解决上面2个问题

3. MQTT的特点
  1)是一个基于客户端-服务器的消息发布/订阅传输协议,MQTT协议中有三种身份:发布者(Publish)、代理(Broker)(服务器)、订阅者(Subscribe)
  2)每个连入进来的设备既可以作为发布者发布消息,也可以注册成为消息订阅者,从服务器端订阅相关消息。
  3)MQTT协议被设计成适合工作在低带宽、不可靠的网络的远程传感器和控制设备通讯而设计的协议。所以对网络的质量要求没有那么高


4.下一篇MQTT2——MQTT服务端安装,客户端测试
更多参考网站

更多MQTT说明 https://www.runoob.com/w3cnote/mqtt-intro.html
作者:admin
原文地址:www.jiansword.com

posted @ 2020-03-17 21:55  jiansword  阅读(864)  评论(0编辑  收藏  举报