Price of +5k concurrent users

Approximately for 5K concurrent users I need something like BiXeon 4Gb. If I want to scale my system to 10K, how I understood, I have to install CM on separate host something like Xeon 2Gb. And for another +5k one more CM. I’‘ve read that pcohen reach 15K users, but let’'s keep “magic number”


  1. Did I understand correctly?

  2. Is there any limit how many CM I can to WF if forget for a moment about bandwidth?

  3. What price of +5K increasing, roughly? (something like: for +5k I need 50% faster CPU, 200% more RAM, 30% faster connection)

Actually, I would like to know theoretical limit of system base on WF. Just to be able to say to my boss “Do you want +5K - buy new computer” or “sorry +50M we cannot afford”.


1- In fact I can be more precise. I think you can reach 10K users with a BiXeon with 4Gb of RAM. I would say that if you want to be able to have more users, you need to add Connection Managers.

I made tests with 3 CMs (Xeon with 2Gb RAM) + 1 server BiXeon 4Gb and I was able to get 40000 users connected. With some adjustments on CM side with JVM parameters (-Xmx1024M -Xms1024M -Xss80k) I could reach around 150000 users per CMs.

But in fact when I simulate users with large rosters I have problems around 18K users. Until now I suspect the client tool I use to simulate so many users.

2- Each CM you connect to the server opens a given a number of connections to the server. You can parameter this value for each CM in its configuration file. Theorically you cannot add too many CMs because you will have connections problems but I think the limit is high enough to have other kinds of problems on server side before this limit is the problem

By the way as I told you I was able to have 15000 users connected on a CM. So even if you want 150000 users, you would need let’‘s say for security 15CM, if you set for each of them 5 or 10 connections to the server, I don’'t think this will be the problem. I would bet that your server will give up before you reach so many users

3- Sorry I think I can’'t help you precisely for that question. I made tests with more CMs (same Config but more servers) and reached 80K users connected but I had disconnection problems - again I think it is client fault but it was in a light configuration. In fact I am trying to make such a sizing estimation.

Today I can say that the server load and thus your need depends on the usage intensity.

  • You must make the difference between the total number that can connect and the total number that will really be connected simultaneously.

  • You must also evaluate the roster size of your users (small, large).

  • You must evaluate the frequency of connection/disconnection users.

I have no precsie metric but let’'s say for the configuration I have :

30K users with small rosters (less than 50 items) and moderate connection/disconnection (50/100 per second) available

20K users with medium rosters (150 items) and low connection disconnection rate (20/50) available.

18K users with large rosters (400 items) and very low connection/disconnection rate (less than 20 per second).

I keep on searching and trying to get more precise results.

I am also looking on how to play with caching to increase perfs.

One can also adjust the number of connections to the database but I didn’'t get until now relevant results.

Thank you pcohen. You too precisely to me.

So, nobody knows theoretical limits but your experimental data is very important to me.


as Wildfire does the caching of the users and rosters you may really want to use CM’‘s to connect to Wildfire and allow Wildfire to use it’'s memory for the database cache and not for connections.

I have no idea how NIO will improve the memory usage, but Gato seems to be very happy about NIO: “Wildfire and CM will be able to scale to tens of thousands of concurrent connections”.


Thank you it2000.

Do you know what release will be using NIO?

3.2.0 should be released end of January 2007.

If you want to use NIO more early you may want to check out the nightly builds as soon as JM-907 is resolved.


Hey guys,

Wildfire 3.2 to be out by the end of January will have full support for NIO. We are currently doing some stress tests and the results are really impressive. So far with an WF instance, one CM and an MySQL server running all in the same old Solaris machine we are getting 18K concurrent connections. For 18K concurrent users with an average of rosters of 25 contacts we are around 800 MB of RAM. More info to come as a blog entry possibly next week.


– Gato

That’'s awesome guys! Nice work!