httpd-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael <mich...@asstr.org>
Subject Re: Apache 1.3.26 DOS'ing itself?
Date Mon, 19 Aug 2002 22:13:00 GMT
	Well, this may not be the "offocial" answer, but:

1) you need to raise the maxclients setting, not lower it. Your server
usage is going up, and it'll take more apache processes going to handle
that. Note that if you simply don't have the hardware resources to handle
the requests that's a different matter :-)
In general, though, unless you're afraid of apache overwhelming your
server and taking it down then you should be safe to raise maxclients
up until you reach the hard process limit for your server (you'll have to
recompile apache to raise it above 256).

2) The 100% mem/100% cpu thing is most likely due to your *extremely*
low MaxRequestsPerChild setting. You have 100 servers running, and those
servers will *exit* and *fork* every 100 requests they get. That means
that you're probably spending as much time in fork() and wait() as you
are actually serving requests. At the very least, raise that setting
a lot; if you can, change it to 0. This works on my linux box for 1.3,
at least. If you can't make it 0, try something like 10000 or 100000.

- Michael

On Mon, 19 Aug 2002, Jacob Coby wrote:

> Recenty Apache seems to be DOS'ing itself every couple of days.  httpd
> starts using 100% cpu and 100% mem.  The computer starts HDD thrashing, and
> eventually the server stops responding.
>
> A check of the error_log reveals:
>
> --- snippet ---
> [Mon Aug 19 16:44:10 2002] [error] server reached MaxClients setting,
> consider raising the MaxClients setting
> [Mon Aug 19 16:53:55 2002] [notice] child pid 19538 exit signal Segmentation
> fault (11)
> [Mon Aug 19 16:55:14 2002] [warn] child process 19961 still did not exit,
> sending a SIGTERM
> [Mon Aug 19 16:55:22 2002] [warn] child process 19137 still did not exit,
> sending a SIGTERM
> --- end snippet ---
>
> Which later becomes:
>
> --- snippet ---
> [Mon Aug 19 16:55:26 2002] [error] child process 19961 still did not exit,
> sending a SIGKILL
> [Mon Aug 19 16:55:26 2002] [error] child process 19137 still did not exit,
> sending a SIGKILL
> [Mon Aug 19 16:55:26 2002] [error] child process 19667 still did not exit,
> sending a SIGKILL
> --- end snippet ---
>
> I'm assuming this has something to do with MaxClients?  A search of google
> [groups] shows some other cases of this happening, but no resolutions.
>
> My server settings are as follows:
>
> KeepAliveTimeout 15
> MinSpareServers 10
> MaxSpareServers 20
> StartServers 20
> MaxClients 100
> MaxRequestsPerChild 100
>
> I'm guessing that when the server hits MaxClients, all hell breaks loose for
> some reason?  What do I do?  I'd really rather not decrease maxclients
> drastically unless absolutly necessary.  I've lowered it to 90 for the time
> being.
>
> Any help is much appreciated.  We've just weaned some large companies from
> proprietary systems to our system, and it's not very good to have these
> random timeouts.
>
> -Jacob
> http://www.listingbook.com
>
>
> ---------------------------------------------------------------------
> 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
>


---------------------------------------------------------------------
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