Hi folks!
Last night I came to milestone 0.001 in a small hobby project I decided to call Blackfoot (for no apparent reason). It is: - A replacement for KomHttpServer aimed at primarily serving the needs of Seaside *in Squeak* (not other Smalltalks). But also other web solutions in Squeak. - *Not* a fullblown web server like Kom but rather an implementation using SCGI (Simple CGI from the Python folks). Like FastCGI but mucho simpler. - Clean, lean and mean code base. I am creating this as a standalone package (no dependency on TcpService nor DynamicBindings) with BF-prefixed classes. I want code to be readable and hackable. - For Dynamically scoped variables I will use the Seaside Notification pattern (simple and nice). - It uses regular SocketStream at the bottom and a listen loop more or less like in Kom/WAListener etc. - It will not do virtualhosts, file serving, the whole mod-stack that Kom has etc etc. ...ok, so what is the tantalizing result that I need to have in order to make such a post? :) Last night I did a quick and dirty benchmark using ab on a "hello world"-handler. It did nothing but returning 22 bytes "as a HttpResponse". So far I also use the existing HttpResponse so that code may very well be optimizable too. I compared with Kom and came roughly up with these two positives: - Blackfoot serves around 2x the speed for such small requests. On my small laptop I got 750 req/sec, while Kom gave about 350. When I removed all header parsing I got 1000 - so header parsing is still a hefty part of the story for such small requests. Note that I have not done any bigger payloads yet. - Blackfoot serves *much* more consistently. Kom had awful "max" values, especially when cranking up number of clients. So it looks promising. Oh, I used Cherokee 0.8.1 as webserver - very nice and very fast little bugger! :) Other possible alternatives with existing SCGI implementations are Lighttpd, Nginx and of course Apache. Will get back when I have something that works with Seaside examples. regards, Göran _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Hi Goran,
Great news... I will need something like this very soon, when do you think this will be released? Cheers, Esteban On 2008-09-11 05:08:07 -0300, Göran Krampe <[hidden email]> said: > Hi folks! > > Last night I came to milestone 0.001 in a small hobby project I decided to > call Blackfoot (for no apparent reason). It is: > > - A replacement for KomHttpServer aimed at primarily serving the needs of > Seaside *in Squeak* (not other Smalltalks). But also other web solutions > in Squeak. > > - *Not* a fullblown web server like Kom but rather an implementation using > SCGI (Simple CGI from the Python folks). Like FastCGI but mucho simpler. > > - Clean, lean and mean code base. I am creating this as a standalone > package (no dependency on TcpService nor DynamicBindings) with BF-prefixed > classes. I want code to be readable and hackable. > > - For Dynamically scoped variables I will use the Seaside Notification > pattern (simple and nice). > > - It uses regular SocketStream at the bottom and a listen loop more or > less like in Kom/WAListener etc. > > - It will not do virtualhosts, file serving, the whole mod-stack that Kom > has etc etc. > > ...ok, so what is the tantalizing result that I need to have in order to > make such a post? :) Last night I did a quick and dirty benchmark using ab > on a "hello world"-handler. It did nothing but returning 22 bytes "as a > HttpResponse". So far I also use the existing HttpResponse so that code > may very well be optimizable too. I compared with Kom and came roughly up > with these two positives: > > - Blackfoot serves around 2x the speed for such small requests. On my > small laptop I got 750 req/sec, while Kom gave about 350. When I removed > all header parsing I got 1000 - so header parsing is still a hefty part of > the story for such small requests. Note that I have not done any bigger > payloads yet. > > - Blackfoot serves *much* more consistently. Kom had awful "max" values, > especially when cranking up number of clients. > > So it looks promising. Oh, I used Cherokee 0.8.1 as webserver - very nice > and very fast little bugger! :) Other possible alternatives with existing > SCGI implementations are Lighttpd, Nginx and of course Apache. > > Will get back when I have something that works with Seaside examples. > > regards, Göran _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Hi!
Esteban Lorenzano wrote: > Hi Goran, > Great news... I will need something like this very soon, when do you > think this will be released? I will release it very soon - I just need to get to some kind of "working state". :) Currently BFHttpRequest is extremely bare bone and does definitely not work together with Seaside for example. But Very Soon - typically during next week - I don't want to post and then not publish. :) regards, Göran _______________________________________________ seaside mailing list [hidden email] http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside |
Free forum by Nabble | Edit this page |