On Tue, 6 Jun 2000, Tom Lancaster wrote:

> Hi,
> I've got this strange behavior in a production site that until a recent
> upgrade never showed this kind of thing:
> I've set maxclients to 50, maxrequestsperchild 1.
> What happens is that the server runs fine, is fast, etc, but the number
> of apache processes climbs gradually until it reaches ~maxclients, then
> will no longer serve pages.
> I thought this was due to children not exiting, but some of them
> apparently do, as the number of processes rises and falls on its way to
> the top.
> 
> What is Apache supposed to do when you set maxrequestsperchild to 1?
> I'd have thought each process would exit immediatley after serving
> something.
> I'm inclined to think there's something in my code that's hanging, but I
> read that the symptom of that is processes consuming large amounts of
> CPU - they're not, and memory usage is normal, too (~10M).
> 
> Another symptom: sometimes when the processes are nearing the top,
> they'll start haging, but one by one; if I hit stop on a non-responsive
> request, then re-try, it serves fine.
> 
> I'm using the debian package of modperl 1.21 statically linked with
> apache 1.3.9, and HTML::Embperl 1.2.1 ( I think).

i suggest upgrading to 1.24.  i also suggest setting maxrequestsperchild
higher than 1.  if you do have httpds hanging, this might shed some light:

% gdb httpd <pid of spinning process>
(gdb) where
(gdb) source mod_perl-x.xx/.gdbinit
(gdb) curinfo


Reply via email to