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>
