Thanks Ben -- that's pretty compelling. IMO the day when the general population moves beyond pre-fork into an event-driven model cannot come soon enough.
In fact, your observation is consistent with my experience with "httpd -X" where the waterfall diagram in Firebug for a page refresh had approximately 7-second stairsteps -- I think 2 seconds for linger and 5 seconds for KeepAlive. -Josh On Mon, Apr 11, 2011 at 9:29 PM, Ben Noordhuis <i...@bnoordhuis.nl> wrote: > On Tue, Apr 12, 2011 at 02:18, Joshua Marantz <jmara...@google.com> wrote: > > What are the reasons someone might wish to turn KeepAlive off? The only > one > > I can think of is in single-process mode (httpd -X) it can be a drag to > > refresh a page with lots of resources; but this seems like a secondary > issue > > that could be worked around if needed. > > Lower throughput under heavy load. > > With KeepAlive on, each client gets allocated a process (or thread) to > serve the requests. That process isn't doing anything useful between > the client's requests so you end up with lots of idle processes, even > when it's peak traffic. > > The event MPM is purposely written to deal with this issue: it puts > the idle connection in a pool so the worker can serve other requests. >