美文网首页
mqtt 系列之综述

mqtt 系列之综述

作者: 守拙圆 | 来源:发表于2019-01-17 14:38 被阅读27次

    1 mqtt 起源

    MQTT 的全称为 Message Queue Telemetry Transport,是在 1999 年,由 IBM 两位工程师为通信卫星网络连接输油管道的项目开发的。其主要目的是为了满足低电量消耗和低网络宽带的需求,MQTT 协议在设计之初就包含了一下特点:

    1. 实现简单
    2. 提供数据传输的 QoS
    3. 轻量、占用宽带低
    4. 可传输的任意类型的数据
    5. 可保持的会话

    之后 IBM 一直将其当做一个内部协议使用,后来由于物联网的发展,需要标准协议支撑,MQTT 从而广泛的使用于物联网。

    2 mqtt 特性

    mqtt 协议具有以下特性:

    • 基于 TCP 协议的应用层协议
    • 采用 C/S 架构
    • 使用订阅/发布模式,将消息的发送方和接收方解耦
    • 提供 3 种消息的 QoS(Quality of Service):至多一次,最少一次,有且只有一次
    • 收发消息都是异步的,发送方不需要等待接收方的应答

    3 mqtt 与传统消息队列的区别

    虽然 MQTT 协议名称中有 Message Queue 这个名词,但是它并不是一个 RabbitMQ 那样的消息队列。MQTT 与传统的消息队列相比有如下区别:

    1. 在传统消息队列中,在发送消息之前,必须先创建相应的队列;在 MQTT 中不需要先创建要发布的主题(可订阅的 Topic);
    2. 在传统消息队列中,未被消费的消息总是被保存在某个队列中,直到有一个消费者将其消费;在 MQTT 中,如果发布一个没有被任何客户端订阅的消息,这个消息将被直接丢弃;
    3. 在传统的消息队列中,一个消息只能被一个客户端获取;在 MQTT 中一个消息可以被多个订阅者获取,MQTT 协议不支持指定消息被单一客户获取。

    MQTT 协议可以为大量的低功率、工作网络环境不可靠的物联网设备提供通讯保障,而它的应用范围确不止于此,在移动互联网行业也广泛使用,如Android app 的推动功能,IM等都有基于 MQTT 的实现。

    相关文章

      网友评论

          本文标题:mqtt 系列之综述

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