mqtt mosquitto linux连接限制

Dan*_*mot 8 android mqtt mosquitto

用户如何通过MQTT进行推送通知,在Linux中超过1024连接限制?

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

或者,我绝对需要桥接吗?除了mosquitto的配置设置手册页之外,我还没有看到很多关于如何设置的文章.

或者,我可以通过修改一些Linux配置设置来完成,我很高兴与单个mosquitto服务器一起使用?

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

ral*_*ght 8

从理论上讲,您可以将Linux设置的最大插槽数量用于mosquitto以满足您的需求.那么问题就在于绩效.关键指标是每秒总消息数.如果您连接了20k个客户端,将激活多少个以及每个将发送多少个消息?

例如,如果一半的客户端处于活动状态并且每秒发送一条消息,则有10k msps - 当然只有传入.如果这些消息中的每一个都是10个字节,那么您将持续100kB/s或800kbps.

另一个方面是如何安排主题层次结构.我不能告诉你什么是最好的,但肯定会产生影响.

我最好的建议是编写一个模拟真人的客户端,然后用它来对你的场景进行真正的测试.

我已经看到了极端客户端计数的例子:http://bit.ly/HytRpK但没有更多细节.

最后一点:IBM目前正在制作关于MQTT的红皮书.它应该在'春天',即很快就可用.我认为它将涵盖扩展问题.


小智 5

对于客户,我们测试了IBM WebSphere MQ的MQTT,将每个队列管理器的并发客户端连接数增加到240,000(MQ运行时,MQ集群中可以有许多).有人告诉我,它比Apache Web服务器合理处理的数量多10倍.测试期间的服务器CPU低至<5%.本来可以继续增加并发MQTT客户端的数量超过240,000,但实验室用尽了负载测试客户机.IBM MQ是嵌入在WebSphere Message Broker ESB中的发布/订阅提供程序,因此我希望它具有相同的结果.