Hi
This is a small update on the work I've been doing on the AJP adapter
for Seaside. I've optimized the content rendering and reduced the amount
of copying it does for content rendering (header rendering still does
more copying than strictly necessary).
The most dramatic change is with a 16k response (WAFastRequestHandler)
where throughput is up from 75 Mbytes/s to 100 Mbytes/s [1]. This is now
close to saturating a gigabit link. With an 8k response
(WADwBenchHandler) we're now at about 7500 req/s [2] up from a about
6500 req/s. That's close to where the 2 byte response performance was
back in February. Speaking of which a 2 byte response
(WASmallRequestHandler) is now at 8700 req/s [3] up from about 8100 req/s.
Apache 2.2.22 mpm_worker mod_proxy_ajp
CPU Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz
Cog r2540
You can get the code in the Seaside-Benchmark package in the addons
repository [4].
[1] https://gist.github.com/2339951
[2] https://gist.github.com/2339947
[3] https://gist.github.com/2339940
[4] http://www.squeaksource.com/Seaside31Addons
Cheers
Philippe