menu
search
 

在物联网应用中,为什么MQTT比HTTP好用?

 
关键词:mqtt.http 
 
问题:在物联网应用中,为什么MQTT比HTTP好用?
回答

在MQTT协议中,数据包由:固定报头(Fixed header)、 可变报头(Variable header)、 消息体(payload)三部分构成。

最小的数据包只有2字节,且无应用消息头。使用发布/订阅消息模式;提供一对多的消息发布和应用程序之间的解耦;消息传输不需要知道负载内容;使用 TCP/IP 提供网络连接。

有三种消息发布的服务质量:

至多一次

至少一次

只有一次

MQTT提供will和Retain的消息选项,在客户端断线情况下,代理会通知所有订阅的客户端;保留消息使得新订阅的客户端也能收到消息通知。

HTTP超文本传输协议,是为了提供和接收HTML界面开发,是基于客户端和服务器的请求响应协议。

HTTP有以下要点:

1,HTTP客户端通过URL向HTTP服务端发送请求。服务器根据接收到的请求后,向客户端发送响应信息。

2,请求消息Request:HTTP请求由四个部分组成,请求行(request line)、请求头部(header)、空行和请求数据四个部分组成。

3,响应消息Response:HTTP响应也由四个部分组成,分别是:状态行、消息报头、空行和响应正文。

从上可以看出,相比之下,MQTT有非常短的消息头,发布/订阅的消息模式。

对比而言,HTTP的请求/应答方式的会话都是客户端发起的,缺乏服务器通知客户端的机制,不支持will和Retain选项,MQTT不需要设备有强大的计算能力,更适用于移动设备,对电池消耗更低,在吞吐量、响应时间、带宽使用率方面都更适合物联网应用。



 

免责声明:本网站部分文章、图片等信息来源于网络,版权归原作者平台所有,仅用于学术分享,如不慎侵犯了你的权益,请联系我们,我们将做删除处理!

产品系列

Product Series