My goal is to find out, roughly, how many apache2 connections my server can handle at one time. I've gone through all of my running processes, including the apache2 processes, and figure that of the 840mb total used, 480 mb or so can be associated with "overhead" and the remaining 360 mb comes from the apache processes (averages 20 mb per single apache2 process).

So, is this a fair formula to determine my max connections allowed?

(server size - overhead) / 20

So, based on the numbers above with a 1 GB server, I should be able to handle 27 connections. With a 2 GB server, I should be able to handle 78. And so forth.

Does this approach make any sense whatsoever?

  • Short answer : it depends on which MPM you're using and whether you're calling additional code such as CGI or other server-side language scripts. Your approach at planning performance is flawed IMO. You're better off with just pointing siege at the server and seeing the max connections it can handle before running out of memory. Also, consider using more efficient event-based servers like Nginx or Lighttpd if you need to many concurrent connections. – André Borie Aug 14 '15 at 16:45

The number of concurrent connections is directly dictated by the load that each client places on apache. So getting an accurate estimate of max connections is only possible if you know exactly what each connecting client will be doing. More activity = more load on CPU, Memory and disk.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.