MQTT定性分析

MQTT优点

  • 轻量和高效:MQTT 消息只有 2 字节的头部开销,节省带宽资源。这使得该协议非常适合低功耗、低带宽的设备。
  • 包容不稳定的网络:通过心跳机制检测网络连接状态,及时发现并恢复断线,适用于不稳定网络环境。
  • 低功耗:MQTT专为低功耗目标而设计,客户端与服务器之间保持长连接,减少频繁建立连接的开销。
  • 高并发:支持上百万个并发设备。
  • 消息传输可靠:提供三种服务质量等级,保证在不稳定的网络环境下也能可靠地传输消息。
  • 低延迟:由于采用简单的基于主题的发布/订阅模型,实现了近乎实时的消息传输,延迟仅为个位数毫秒级。

MQTT缺点

  • 不适合音视频流等内容
  • 消息顺序不保证
  • 缺乏内置消息路由和处理逻辑
  • 过度依赖中间代理:MQTT消息传递高度依赖于broker,broker成为系统的单点故障

Broker选型

  • EMQX:GitHub 上 Star 数最高的 MQTT Broker,有 12.6k 个 Star。
  • Mosquitto:Star 数排名第二,但使用最为广泛。
  • NanoMQ:目前最新、最活跃的 MQTT Broker 之一。
  • VerneMQ:虽然在 Github 上的开发并不活跃,但 Star 数排名第三。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容