Muhammed Ali’s Free Ruby 1.9.x Web Servers E-Book
Egyptian Ruby developer Muhammed Ali (of MySQLPlus fame) has released the first draft of a "Ruby 1.9.x Web Servers" booklet. It looks at how different HTTP daemons and server libraries (Thin, Passenger, WEBrick and Mongrel) perform in Ruby 1.9.1. You can read the book for free on his site or on Scribd, but if you want to download a PDF to view locally you'll need to have a free Scribd account, alas.
As of this first draft, the e-book's 60 pages long - resulting in about 50 pages of actual content. It's clearly a draft, but Mohammed has put together a pretty readable overview of the state of not only Web servers but basic TCP servers and concurrency issues on Ruby 1.9. There are even several diagrams that provide visual demonstrations of how the different servers manage requests.
The bulk of the booklet, however, is turned over to graphs showing the results of performance tests made upon each library under different scenarios. There are too many data to summarize here, but unsurprisingly WEBrick typically loses (though not always, in a few it wins!) and Thin is typically in the lead.
[ad] Mobile Orchard's from Rubyist to iPhone programmer in 2 days class is coming to Portland/OR Nov 12-13 and Los Angeles/CA Nov 19-20. $1200 $799 with early reg and "inside" discount code.




October 12th, 2009 at 5:52 pm
Float like a butterfly, sting like a bee...
October 12th, 2009 at 6:43 pm
Thanks for the review, I added a direct download link to the end of my blog post, you no longer need to register @ scribd
October 12th, 2009 at 10:12 pm
I've just started to read. Very interesting, good introduction on multiprocess and multithread principles. The benchmark between the servers is quite amazing.
October 13th, 2009 at 1:39 pm
What about Ebb? Wasn't that considered the greatest recently?
http://www.rubyinside.com/ebb-web-framework-http-server-786.html
October 13th, 2009 at 1:45 pm
@Daffy: It's certainly missing some other options that would be interesting to see. Ebb, certainly (though I'm not sure what its 1.9 status is) but especially Unicorn - which we'll be mentioning soon.