用于IoT和推送通知的MQTT中的群集

用于IoT和推送通知的MQTT中的群集,mqtt,mosquitto,moquette,Mqtt,Mosquitto,Moquette,我已经开始阅读有关MQTT协议及其实现的一些细节。我经常遇到“集群”这个词。有人能帮我理解“集群”对于MQTT协议意味着什么吗 比较各种MQTT协议,术语“集群”有一列。集群是MQTT代理的集合,设置为在彼此之间桥接所有主题,以便客户端可以连接到任何一个集群成员,并且仍然可以向所有其他客户端发布和接收消息,而不管它们连接到哪个集群成员 需要注意的几件事: 主题桥循环,消息发布到一个集群成员,然后转发到另一个集群成员,然后转发到另一个集群成员,最后返回到原始集群成员。如果发生这种情况,则原始代理

我已经开始阅读有关MQTT协议及其实现的一些细节。我经常遇到“集群”这个词。有人能帮我理解“集群”对于MQTT协议意味着什么吗


比较各种MQTT协议,术语“集群”有一列。

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

需要注意的几件事:

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

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

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

如果您想了解更详细的解释,我建议您使用哪个MQTT代理进行移动推送通知?MQTT是协议对不起,我的意思是BrokerA real MQTT代理群集没有概述的缺点(主题桥循环和无法在任何节点上恢复的持久会话)。我相信这里的定义更多的是关于桥接,而不是集群。此外,集群还涉及消除MQTT中的单点故障,桥接无法解决这一问题,因为只分发消息。我不同意这个答案,请参阅我的回答。