1

我对 MQTT 的功能和整体推送设计有一些简短的问题。所以这里有一个场景,让我们以 Twitter 为例;Twitter 希望向个人用户发送推送通知。因此,假设您在我发推文时订阅了我的通知主题。这将是 MQTT 的适当主题层次结构和用例吗?

根据我对发布/订阅系统的了解,这会变得非常麻烦。您不必为每个单独的用户设置一个主题吗?这类系统中的主题是否有限制?拥有数百万用户的大型应用程序如何发送推送通知?

4

2 回答 2

2

是的,MQTT 正是您想要的。

然而 MQTT 只是一个协议,主题数量的限制取决于它的实现。我使用Netty构建了自己的 MQTT 服务器,它可以在单台机器上向超过一百万个客户端推送消息。对于开源解决方案,您可以查看mosquitto,它是用 C 编写的最广泛使用的 MQTT 服务器。希望对您有所帮助。

于 2013-04-08T09:08:56.800 回答
2

缩放在任何系统中都是一个问题。

MQTT——嗯,一些代理,特别是 IBM WebSphere MQ、RSMB 和 mosquitto——支持桥的概念——它为主题启用卫星、网格和树层次结构。

您当然不太可能有数百万客户连接到单个代理(但上述所有实现都可以很好地扩展到数十万)。您需要考虑代理的主题布局和物理层次结构,以及一些负载平衡和连接本地化。

于 2013-04-09T23:09:41.213 回答