每一个 MQTT 节点只负载了部分客户端,要实现消息在集群中不同客户端间的传递,必须要实现集群间的消息共享。本文便是介绍其中的实现方式。

阅读全文 »

MQTT 提供了遗嘱 Will 功能,可以在终端异常下线时,向特定的 Will Topic 发送指定的 Will Message, 从而让第三方感知终端的异常下线。

阅读全文 »

MQTT 可以设置 Topic Retain 消息,每当有新的订阅关系匹配时,所属的新终端便会收到该 Retain 消息。如果有需要在新建订阅时,推送一些初始化信息,可以使用该功能。

阅读全文 »

MQTT 可以设置是否持久化 Session 数据,这样可以保证终端断线之后重新上线可以恢复之前的 Session 数据。这个功能可以通过 Clean Session 设置。

阅读全文 »

MQTT 协议提供了 3 种消息服务质量等级(Quality of Service),保证了在不同的网络环境下消息传递的可靠性。本文讲解这 3 种 QoS 的实现。

阅读全文 »

参考现有一些厂商 MQTT Broker 的实现,发现大部分都要依赖于外部系统 MQ 来实现消息的存储或转发,MQTT Broker 仅用于终端的接入及协议的解析。在这种架构下,各结点可方便进行扩展,可应对大规模终端的接入。在小规模(几十万)的场景下,这个架构相对比较复杂。本文的目的主要是实现一个架构相对比较紧凑,且易于学习的 MQTT Broker 服务器,该服务器不用依赖于外部系统 MQ , 自带消息的集群路由功能。

阅读全文 »

MQTT 协议是物联网中用于设备接入的一个重要协议,该序列文章将介绍 MQTT 协议相关的知识点,并在 Moquette 开源项目基础上实现一个集群版的 MQTT Broker 服务器,以供学习的目的使用。

阅读全文 »
0%