How to increase Openfire concurrent connection limit?

I am trying to test how many concurrent user connections Openfire can handle. I have noticed a limit at4000 users. How can I handle 50000 concurrent connections or more on Openfire? What configuration should be done to handle large number of connections.

My Server Config

OS - Ubuntu Server 14.04.1 64 bit
Processor - 3.00 GHz
RAM - 512 MB
Openfire Version - 3.9.3

For testing purpose, I am using a virtual server setup on virtualbox.

Scenario

I’m testing Openfire 3.9.3 without connection manager and with no SSL either (yet). The server is a virtual machine setup on Virtualbox having 3.00GHz processor and 512MB RAM. It is a standard Openfire install with MySQL database connection with 100 maximum connections.

When testing with a load testing script from https://community.igniterealtime.org/docs/DOC-1232 [Please note I have not setup a cluster] the number of user connection increase steadily till 4000 concurrent user connections. Once 4000 users are connected, all connections begin to drop until all connections are lost and I get an error as follows:

java.net.SocketException: Too many open files
at java.net.Socket.createImpl(Socket.java:460)
at java.net.Socket.<init>(Socket.java:431)
at java.net.Socket.<init>(Socket.java:211)
at OpenfireClusterStressTest.testMultipleLogin(OpenfireClusterStressTest.java:111)
at OpenfireClusterStressTest.main(OpenfireClusterStressTest.java:46)

Issue

Cannot handle more than 4000 concurrent user connections. How to increase this limit? What openfire configuration is required to achieve the same?

Posted on answered on stackoverflow: java - How to increase Openfire concurrent connection limit? - Stack Overflow

1 Like