Sizing Instant Messaging Server for the Enterprise
By jhawk on Jul 18, 2005
Deploying Sun Java(tm) Systems Instant Messaging Server
The baseline performance tests demonstrated that 30K concurrent connections can be supported by an IM deployment that is comprised of 2 systems for the multiplexor, each with 4 multiplexor instances, and 1 system for the IM server. This deployment consisted of 7500 users that were connected and active and 22500 users that were connected but inactive, i.e. not particpating in chats. The assumption is that 25% of all connected users would be active (i.e. participating in chats, etc.) at any given time.
The baseline test did not exceed the capacity of the deployment. We've found that IM deployments are memory bound, not cpu bound. I would say that the baseline test indicates that 40K concurrent connections can be supported for one domain on a single server, if there is sufficient memory available.
If the 40K users were to be supported on a similar deployment as was used to perform the baseline tests, then each system with multiple multiplexor instances would require roughly 500M of memory (i.e. 20K users x 22K mem/user = 440M memory), and the system with the IM server would require slightly more than 2 GB of memory (i.e. 40K users x 51K mem/user = 2040M memory).