Joe Schaefer <[EMAIL PROTECTED]> writes: > The concept of multiplexing apache's lingering > close comes from lingerd, but I thought it'd be > interesting to try the same thing for worker with > a dedicated closer thread.
The patch is intended to improve worker's scaling characteristics without adversely affecting per-request latency. I don't have a good testbed for checking this out, but I've run a few microbenchmarks with ab (on the same host the server is running on) to see what happens when the server is overdriven by lots of concurrent requests. Setup: standard installation w/ worker's config reduced to <IfModule worker.c> StartServers 1 MaxClients 5 MinSpareThreads 1 MaxSpareThreads 5 ThreadsPerChild 5 MaxRequestsPerChild 0 </IfModule> ie 1 server w/ 5 threads. The closer_thread's queue/pollset size are capped at 100 with this config. Running ab -n 10000 -c $concurrency http://localhost/ concurency requests/sec unpatched with patch (CLOSER_DEBUG undefined) 5 2995 2923 10 2999 2990 20 2991 2935 50 2975 2896 100 2715 2853 200 2530 2659 500 1871 2353 600 1014 2316 700 547 2094 800 450 2021 900 428 2042 1000 230 2000 -- Joe Schaefer