1

我已经开始阅读一些关于 MQTT 协议及其实现的细节。我经常遇到“集群”这个词。谁能帮我理解 MQTT 协议的“集群”是什么意思?

在各种 MQTT 协议比较中,有一个术语“集群”的列

4

2 回答 2

3

使用主题桥循环转发消息不会产生真正的 MQTT 代理集群,这将导致上面列出的缺点。 真正
的MQTT 代理集群是代表一个逻辑 MQTT 代理的分布式系统。集群由各种单独的 MQTT 代理节点组成,这些节点通常安装在单独的物理机或虚拟机上,或者通过网络连接。 MQTT 代理集群的典型优势包括:

  • 消除单点故障
  • 跨多个集群节点的负载分布
  • 客户端能够在任何代理集群上恢复会话
  • 可扩展性
  • 弹性和容错 - 在云环境中特别有用

如果您正在寻找更详细的解释,我推荐这篇博文。

于 2017-07-19T11:55:41.830 回答
-1

集群是 MQTT 代理的集合,它们设置为在彼此之间桥接所有主题,以便客户端可以连接到任何一个集群成员,并且仍然可以向所有其他客户端发布和接收消息,无论它们连接到哪个集群成员。

需要注意的几点:

  • 主题桥循环,其中消息发布到一个集群成员,然后转发给另一个集群成员,然后是另一个,最后返回到原始成员。如果发生这种情况,原始代理无法知道它最初将其推送给其他集群成员,因此消息并最终进入循环。共享消息状态数据库或使用单个桥接复制代理可以解决此问题。
  • 持久订阅/会话,除非代理具有池化会话缓存,否则客户端在重新连接时连接到不同的集群成员时将不会保留会话或订阅状态。
于 2017-07-18T07:59:51.610 回答