From: Eric Wong on 4 May 2010 18:50
Rainbows! is an HTTP server for sleepy Rack applications. It is based on
Unicorn, but designed to handle applications that expect long
request/response times and/or slow clients. For Rack applications not
heavily bound by slow external network dependencies, consider Unicorn
instead as it simpler and easier to debug.
Mostly internal cleanups and small improvements.
The only backwards incompatible change was the addition of the
"client_max_body_size" parameter to limit upload sizes to
prevent DoS. This defaults to one megabyte (same as nginx), so
any apps relying on the limit-less behavior of previous will
have to configure this in the Unicorn/Rainbows! config file:
# nil for unlimited, or any number in bytes
The ThreadSpawn and ThreadPool models are now optimized for serving
large static files under Ruby 1.9 using IO.copy_stream.
The EventMachine model has always had optimized static file
serving (using EM::Connection#stream_file_data).
The EventMachine model (finally) gets conditionally deferred app
dispatch in a separate thread, as described by Ezra Zygmuntowicz
for Merb, Ebb and Thin.
 - http://euruko2008.csrug.cz/system/assets/documents/0000/0007/tanaka-IOcopy_stream-euruko2008.pdf
 - http://eventmachine.rubyforge.org/EventMachine/Connection.html#M000312
 - http://brainspl.at/articles/2008/04/18/deferred-requests-with-merb-ebb-and-thin
Prev: Download version 1.8?
Next: [ANN] unicorn 0.98.0 - Rack HTTP server for fast clients and Unix