Philippe , That is incredibly fast, I just tried and I can't even get plain apache2 serve the static.html that fast over the local network ! When I have more time, I really have to try to repeat your results with your code ( as well as study the code ;-) Can you please provide the main pointers again ? I remember you once explained how to setup AJP somewhere... Sven On 25 Feb 2012, at 17:31, Philippe Marschall wrote:
On 25.02.2012 16:02, Sven Van Caekenberghe wrote:
Philippe,
On 25 Feb 2012, at 14:35, Philippe Marschall wrote:
Hi
I heighten everybody's mood I'll post some positive news.
After some optimizations in both Seaside and AJP I managed to break 8000 requests / sec with a single Pharo 1.3 image. Thanks to SystemProfiler I knew where to look.
This is with a single request handler that just returns a two byte response. It doesn't involve any rendering, sessions, continuations or whatsoever but it kicks on the full Seaside request handling machinery with a request context and everything.
I'm using WASmallRequestHandler from the Seaside-Benchmark package.
WASmallRequestHandler>> #handleFiltered: aRequestContext aRequestContext respond: [ :response | response binary; contentType: WAMimeType textHtml; nextPutAll: 'OK' asByteArray ]
Apache 2.2.21 mpm_worker mod_proxy_ajp CPU Intel(R) Core(TM)2 Duo CPU E7500 @ 2.93GHz SmalltalkImage current vmVersion 'Croquet Closure Cog VM [CoInterpreter VMMaker.oscog-eem.138]'
Attached you'll find the output of ApacheBench.
Cheers Philippe <8k.txt>
Very nice, indeed.
What would you get with your setup when you increase the work a bit from the your lower limit 2 byte response to something like this page ?
http://zn.stfx.eu/dw-bench (dynamically generated by Zn) http://caretaker.wolf359.be:8080/DW-Bench (dynamically generated by Seaside) http://stfx.eu/static.html (static reference by Apache)
Drops to about 6.5 k but throughput goes up to about 50 Mbytes/sec. That's with a statically allocated byte array, no rendering.
It's still doing too much copying so there is space left to go.
Cheers Philippe
<dw-bench.txt>