[Seaside] HTTP Performance

Stephen Pair stephen at pairhome.net
Wed Nov 19 15:45:20 CET 2003


Sven Van Caekenberghe wrote:

> Let me start by saying that I like Seaside (and Squeak) a lot. I am 
> really amazed at how much design and abstraction there is hidden 
> underneath, and how flexible Smalltalk code really is (and how much 
> fun it is to work in such a powerful integrated environment).
>
> However, since I started evaluating writing and deploying web 
> applications in Squeak (only about two weeks ago), the final HTML 
> interface as approached by a browser, felt a little bit slow.
>
> First, I re-implemented our calculator example in Lisp (minus the 
> backtracking support), and it was clear that there was a significant 
> speed difference: it was very easy to 'out-click' the seaside based 
> calculator, which was a lot harder to do with the Lisp version.
>
> Then I decided to do a simple benchmark to really compare HTTP 
> performance:
>
>   http://homepage.mac.com/svc/DW-Bench/index.html
>
> I compared dynamic and static HTTP performance of JBoss, Lisp and 
> Smalltalk.
>
> The Seaside/Comanche results for Squeak were consistent, but slow. I 
> do not know enough about the performance characteristics of Squeak to 
> have an educated opinion about these results.
>
> Does anybody care to run the tests themselves ?
> Does anybody, those with production Seaside/Comanche/Squeak based 
> sites, care to comment ?
> What can be done to make things faster ?
>
> Sven 


I would like to look at these tests, but don't have the time right now.  
I can't speak to why the performance drops from 50 rps to 10 when 
serving a static file to serving a seaside app...that's probably 
something that can be improved in Seaside.  As for the 50 rps number, 
it's really quite interesting...every benchmark of Comanche that I've 
ever seen seems to top out at 50 rps.  It doesn't seem to matter what OS 
or how fast the hardware is.  This leads me to believe that it's 
throttled by timer based algorithms in the Squeak VM that check for 
socket activity.  I think the performance of Comanche could improve 
dramatically if someone figures that out.  I've looked at it briefly, 
but didn't have the time to really pursue it.

- Stephen



More information about the Seaside mailing list