httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Greg Ames <>
Subject Re: Keepalives
Date Fri, 17 Jun 2005 19:39:15 GMT
Brian Akins wrote:
> Bill Stoddard wrote:
>> If the event MPM is working properly, then a worker thread should not 
>> be blocking waiting for the next ka
>> request. You still have the overhead of the tcp connection and some 
>> storage used by httpd to manage connection
>> events but both of those are small compared to a blocking thread.
> Should there be an upper limit on how many connections to have in 
> keepalive, even when using event? Say you have 100 worker threads, you 
> wouldn't want to have 8192 keepalive connections.  So you would want 
> some limit.

> I really like the event mpm, but I still think there has to be an upper 
> limit on how many connections to allow to keepalive.

I'm pleased to hear you've tried the event mpm.

not sure why there has to be a limit.  are you talking about connections per 
worker process?  except for the size of the pollset, I didn't see a need to put 
a limit on the number of connections per worker process back when I was stress 
testing it with specweb99.  when a worker process was saturated with active 
threads, the listener thread would block in ap_queue_info_wait_for_idler() until 
a worker thread freed up.  in the mean time, other processes would grab the new 
connections.  so it was sort of self balancing as far as distributing 
connections among processes.

not sure if the current code still behaves that way.  I plan to find out soon 

> We've been doing some testing with the current 2.1 implementation, and 
> it works, it just currently doesn't offer much advantage over worker for 
> us.  If num keepalives == maxclients, you can't accept anymore 
> connections.  

that's a surprise, and it sounds like a bug.  I'll investigate.  it used to be 
that maxclients was really max worker threads and you could have far more 
connections than threads.

thanks for the feedback.


View raw message