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.
October 12, 2009 at 5:52 pm
Float like a butterfly, sting like a bee...
October 12, 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 12, 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 13, 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 13, 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.