> That's an increase of 47% if I did my math right, though it's not a very
> realistic benchmark.

Yeah, especially becuase it is recommended to turn Keepalive off in 
large setups (even on stock apache). Otherwise each client will keep a 
worker process busy for a few seconds although serving the request might 
only take a few ms. This severly limits the number of concurrent clients 
the server can handle.

[ Since we are already able to pass sockets around between different 
apache processes we could implement a new type of process that receives 
all keep-alive connections from the workers as soon as they are 
finished. It could then use a cheap select() call to wait for subsequent 
requests on all sockets. If data becomes available we can pass the 
socket back to the multiplexer. This would even allow us to handle 
keep-alive requests to different vhosts. ]

> This makes a significant difference with Pound, a 15% performance hit
> compared to directly connecting to apache; with KeepAlive off, it's
> about 34%.  Enabling KeepAlive with the new patch improves the
> performance of Pound+Apache by a whopping 95% (according to this
> simplistic benchmark anyway).

This is really good news. Keepalive is perfect for a setup with load 
balancers. They are built to deal with many clients connection on the 
outside and merge the requests into a few keepalive pipes to the backend 
servers.

Stefan


_______________________________________________
Peruser mailing list
[email protected]
http://www.telana.com/mailman/listinfo/peruser

Reply via email to