httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Evert Lammerts <evert.lamme...@gmail.com>
Subject [users@httpd] Re: apache process locks at 100% cpu usage
Date Wed, 19 Mar 2008 14:42:11 GMT
And how about this: after benchmarking apache with ab -c 100 -n 10000 an 
apache process is left in the process list for a while with <defunct> 
appended - it disappears after a minute or so.

If I benchmark the server from two different machines with two different 
requests, apache locks up, the benchmarks time out and the server is 
left with a process list filled with apache2 processes that need to be 
killed with killall. It does seem to be a concurrency problem but I 
can't figure out where it comes from. Any help would be great!

Evert

Evert Lammerts wrote:
> Hi all,
>
> On a php driven webpage we do 2 asynchronous requests with an 
> xmlhttprequest immediately after the page loads. The first request 
> returns without a problem, the second never returns and leaves the 
> server (ubuntu dapper drake with apache 2.2.4) with an apache process 
> using (according to the top command) 100% CPU. If you try, in the same 
> browser window, to go to an other page the request wont load and 
> stopping the server does not kill the process.
>
> I did some debugging with xDebug on the second request after the 
> pageload (which does not use any database functions) and doing this, 
> or in other words delaying the response of the service, lets the 
> request finish fine and doesn't leave the server with an unfinished 
> process.
>
> Any idea what to do?
>
> I have the impression this has something to do with concurrent request 
> handling, MPM. We're using prefork and the settings are:
>
> # prefork 
> MPM                                                                                 
                              
>
> # StartServers: number of server processes to 
> start                                                                          
>
> # MinSpareServers: minimum number of server processes which are kept 
> spare                                                  # 
> MaxSpareServers: maximum number of server processes which are kept 
> spare                                                  # MaxClients: 
> maximum number of server processes allowed to 
> start                                                           # 
> MaxRequestsPerChild: maximum number of requests a server process 
> serves                                                   <IfModule 
> mpm_prefork_module>                                                              
                                 
>
>    StartServers         
> 10                                                                                  
               
>
>    MinSpareServers      
> 10                                                                                  
               
>
>    MaxSpareServers     
> 100                                                                                 
                
>
>    MaxClients          
> 150                                                                                 
                
>
>    MaxRequestsPerChild   
> 0                                                                                   
              
>
> </IfModule>
>
> Thanks, Evert
>
>
>


---------------------------------------------------------------------
The official User-To-User support forum of the Apache HTTP Server Project.
See <URL:http://httpd.apache.org/userslist.html> for more info.
To unsubscribe, e-mail: users-unsubscribe@httpd.apache.org
   "   from the digest: users-digest-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-help@httpd.apache.org


Mime
View raw message