美文网首页
MQTT理解

MQTT理解

作者: 富多多 | 来源:发表于2020-03-09 17:53 被阅读0次
MQTT结构

MQTT协议是什么

  • 【现状】MQTT(Message Queuing Telemarty Transport),是一种精简的,基于发布-订阅模式的消息传输协议,主要用于物联网等不可靠网络环境下的消息传输,提供消息质量的控制(消息重传机制),其基于TCP/IP协议。
  • 【为什么】IoT设备联网,运行在低带宽、高延时的网络环境下,长链接需求,这些催生了MQTT协议。其非常精简,传输的数据量减小,提供客户端自由的发布、订阅主题,提供消息质量自由控制,支持会话控制(即长链接),另外其提供Last Will机制可以通知同主题下的其他设备当前设备已经断开。

为什么是MQTT

  • 【目的】一种可行的publish/subscribe模式的消息传输范式,与之区别的是pull/get模式,轻量级,消息内容可自由定义的协议,MQTT最大优点在于,可以以极少的代码和有限的带宽,为连接远程设备提供实时可靠的消息服务。
  • 【大厂背书】
    1. Facebook Messager 上用了 MQTT 的多个特性用于网络聊天;
    2. 在 2015 年,亚马逊网络服务平台宣布 Amazon Iot 是基于 MQTT 的
    3. 国内百度IoT
    4. ....

限制在哪里

找了一下午,我主要想弄明白,对于移动终端完全使用MQTT,放弃http是否可行,对于传输的数据量,可能单次请求达50M左右,这种情况下MQTT是否能胜任。以下是找到的写参考资料,很多是热心网友的帖子。

得出的结论:MQTT协议payload最大为256M,结合protobuf进行数据压缩,可以完全用来实现与服务端的信息交互。

怎么选择

  • mosquitto,activeMQ等开源产品,其中mosquitto最优秀
  • 阿里云(收费),payload支持最大64k,只能作为控制指令进行使用,省去了自己维护一套消息服务端运维成本,还需要结合http接口提供给设备使用。

引用

维基百科 MQTT
MQTT入门介绍
MQTT踩坑报告

相关文章

  • MQTT理解

    随着移动互联网普及,物联网(Internet of Things,IoT)也越来越流行。虽然HTTP是网页标准,不...

  • MQTT理解

    MQTT协议是什么 【现状】MQTT(Message Queuing Telemarty Transport),是...

  • MQtt协议

    先来引用一下网上对mqtt的理解:MQTT(Message Queuing Telemetry Transport...

  • MQTT协议理解

    开始 MQTT协议的开发公司,诞生时间等信息,可以通过google先生去查,这里就省略了。只说以下几个信息。 最新...

  • 对MQTT的理解

    MQTT定义了14种类型的控制消息;MQTT中只规定了整数数据采用大端字节序,所以要注意像【剩余长度(Remain...

  • 关于 MQTT 的理解

    1.原理: MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议...

  • MQTT报文理解

    官方文档 看图更好理解图解 报文结构 固件报头Fixed header控制报文的类型 Control Packet...

  • MQTT详解及百度物接入连接手机测试(含源码)

    MQTT简介 MQTT定义 MQTT(Message Queuing Telemetry Transport,消息...

  • 树莓派搭建MQTT服务器

    严格来说应该是MQTT消息代理,不过服务器可能更容易被理解一些。 MQTT协议 这个协议在物联网用的还是挺多的,而...

  • 使用MqttAndroidClient完成IM

    MQTT是什么? mqtt的官方文档 http://mqtt.org/documentation Github上有...

网友评论

      本文标题:MQTT理解

      本文链接:https://www.haomeiwen.com/subject/pbnudhtx.html