mqtt mosquitto linux连接限制

问题描述:

用户如何超过1024个连接限制与Linux中的MQTT进行推送通知相关联?mqtt mosquitto linux连接限制

我正在使用Mosquitto服务器,我认为我读的没有1024版本的内置连接限制。那么,我可以使用单个服务器(无桥接等)并获得5,000,10,000多个用户吗?

或者,我绝对需要桥接吗?我还没有看到很多关于如何设置蚊子配置设置手册页的文章。

或者,我可以通过修改几个linux配置设置来获得,而且我很乐意使用单个的mosquitto服务器吗?

我的应用程序或多或少是一个即时消息应用程序,所以我希望有10,000个甚至20,000个人使用它与永久24/7连接到蚊子,以提醒他们的消息。

从理论上讲,您可以将最大数量的蚊子插座的Linux设置升级为您所需要的。那么问题就在于表现。关键指标是每秒消息总数。如果您连接了20k个客户端,将会有多少个客户端处于活动状态以及每个客户端将发送多少条消息?例如,如果有一半的客户端处于活动状态并每秒发送1条消息,则有10k msps - 当然只有传入。如果每个消息都是10个字节,则持续100kB/s或800kbps。

另一方面是如何安排主题层次结构。我无法告诉你什么是最好的,但它肯定会有效果。

我最好的建议是编写一个模拟真人的客户端,然后用它来真实地测试你的场景。

我见过极端客户的例子:http://bit.ly/HytRpK但没有更多的细节。

最后一点:IBM目前正在生产关于MQTT的红皮书。它应该在'春天'即即将可用。我认为这将涵盖扩展问题。

+0

非常感谢Roger〜事实上,我并不指望我的客户会非常活跃......我预计,在20,000个客户端中,每秒可能有4个或5个请求。所有实际的用户通信从客户端 - >服务器通过SSL,而不是MQTT ..然后我使用MQTT向用户发送一条新消息到达的通知。每天大约4或5次我也使用MQTT来推送数据到*所有*我的用户,每日新闻更新真的..所以非常低的数据/每秒消息..主题层次结构 - 我打算每个用户做一个主题。所以20,000个话题..嗯 – 2012-04-11 05:46:29

我不知道谁做了mosquitto量检测到连接数的。我想你可以做的一件事就是在你选择的运行时测试一个mosquitto实例,并在你的系统测试过程中连接大量的客户线程。

使用WebSphere MQ作为MQTT代理的IBM实现已被证明支持高达100,000个并发连接。我相信IBM的免费经纪人RSMB限于1024个连接。

您可能想考虑如何使用网桥和配置服务来扩展您的代理,以确定将哪些代理连接到新用户。

对于我们测试IBM WebSphere MQ的MQTT的客户,增加每个队列管理器(MQ运行时,您可以在MQ集群中有多个)的并发客户端连接数达到240,000。有人告诉我,这比Apache Web服务器合理处理的要多10倍。服务器CPU在测试期间很低,为< 5%。本来会不断增加并发MQTT客户端的数量远远超过240,000,但实验室中的运行负载测试客户端机器已经不多。 IBM MQ是嵌入在WebSphere Message Broker ESB中的发布/订阅提供程序,所以我期望获得相同的结果。