On Thu, May 3, 2012 at 9:51 AM, Pablo Armando
<pablo.armando@xxxxxxxxxxxx> wrote:
What about the number of open file descriptors ??
On 05/03/2012 01:33 PM, Tom Evans wrote:
.... The fact that your issue seems to happen when you go above 1024 clients - a magic number - suggests that it may be something programatically wrong. Hope that helps!
Thanks for the great feedback everyone, much appreciated.
Tom: I will check the listen queue the next time this happens to see how large it is.
Good idea about raising the limit to accommodate the peak as a starting point, I've switched it to:
StartServers 500
MinSpareServers 1024
MaxSpareServers 1024
ServerLimit 3500
MaxClients 3500
MaxRequestsPerChild 4000
Then in the error log I'm seeing:
[info] server seems busy, (you may need to increase StartServers, or Min/MaxSpareServers), spawning 32 children, there are 1003 idle, and 1043 total children
How can the "server seems busy" with 1003 idle children? yet it is spawning 32 more children? Am I totally missing something obvious here?
Also a great idea to test with the 2.2.22 instead of the OS supplied 2.2.3, I will look into that for sure.
Pablo, open file descriptors was originally what I thought the problem was, but I raised them from 1024 to 16384 and it made no difference:
cat /proc/$(pidof -s httpd)/limits
Limit Soft Limit Hard Limit Units
Max cpu time unlimited unlimited seconds
Max file size unlimited unlimited bytes
Max data size unlimited unlimited bytes
Max stack size 10485760 unlimited bytes
Max core file size 0 unlimited bytes
Max resident set unlimited unlimited bytes
Max processes 55296 55296 processes
Max open files 16384 16384 files
Max locked memory 32768 32768 bytes
Max address space unlimited unlimited bytes
Max file locks unlimited unlimited locks
Max pending signals 55296 55296 signals
Max msgqueue size 819200 819200 bytes
Max nice priority 0 0
Max realtime priority 0 0
Thanks again.