Dear team,
We encounter a bottleneck that we can’t establish more than 1k
connections on a single ActiveMQ server.
Our purpose is that we gonna sending messages to 1 million clients using
ActiveMQ cluster(by network broker cluster mode).
So I wonder how many connections MQ support for single server?
0, Environment
Server:
CentOS Linux 6, 64bit, Java7
ActiveMQ 5.9
Client:
Mac OS 10.9/Windows 7
Java7
1, I modify configuration on server side as below:
<transportConnector name="openwire"
uri="tcp://0.0.0.0:61616?transport.maximumConnections=10000&wireFormat.maxFrameSize=10485760000”/>
2, modify linux open files number
add ‘* - no file 65536’ to /etc/security/limits.conf
add ‘fs.file-max=65536’ to /etc/sysctl.conf
3, in client code, I use ActiveMQConnectionFactory to create connection
connectionFactory = new ActiveMQConnectionFactory(
ActiveMQConnection.DEFAULT_USER,
ActiveMQConnection.DEFAULT_PASSWORD,
"tcp://192.168.1.230:61616?wireFormat.maxInactivityDuration=0&wireFormat.maxInactivityDurationInitalDelay=60000&soTimeout=60000");
((ActiveMQConnectionFactory)connectionFactory).setMaxThreadPoolSize(5000);
but unlucky, the program halt on establishing the 968th connection
every time.
We never establish more than 1000 connections.
So Is there having any way to achieve my requirement? Or Is there
having some places I can take effort or work on?
Thanks in advance.
Best Regards
William
2015/1/28