我想使用Activemq支持大约100Kmqtt连接。Activemq服务器拒绝超过30K的连接。如何调整Activemq以支持更多数量的连接。我尝试了以下方法
transportConnector name="mqtt"让链接偷窃="true"uri="mqttnio://0.0.0.0:1883?maximumConnections=100000
在actiemq. xml
中但没有用。我对打开文件fds的数量进行了一些unix内核调整,使其达到100000。有人解决了这个问题吗?
如果你要处理
ActiveMQ不是为处理那么多MQTT连接而设计的,也不是为MQTT优化的,因为它是一个多用途的消息队列。如果你想坚持使用Apache软件,也许使用ApacheApollo可以有所帮助,尽管我不知道有任何MQTTApollo部署有这么大的规模,但如果你需要一个多协议代理,可能值得一试。同样,我推荐一个专用的MQTT代理来处理大量的MQTT连接。
如果您想处理如此多的连接,您绝对应该研究反应式和多线程MQTT代理,并且您应该确保您选择的MQTT代理已知可以与您想要的连接量和负载一起工作。例如,HiveMQ能够处理
完全披露:我为HiveMQ背后的公司工作。
我可以建议你使用ApacheApolloMQTT连接,当你有并发会话的数量?
ApacheApollo是ActiveMQ的一个子项目,旨在使代理可扩展到大量连接的客户端。虽然ActiveMQ支持MQTT,但它并没有真正针对这种情况进行优化。
JoramMQ(http://jorammq.com)基于Joram(http://joram.ow2.org)多协议消息代理,支持超过500K并发MQTT连接。