Rainbows! 0.7.0 - Fibers and NeverBlock

Eric Wong normalperson at yhbt.net
Sun Nov 29 23:34:13 EST 2009

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.

* http://rainbows.rubyforge.org/
* rainbows-talk at rubyforge.org
* git://git.bogomips.org/rainbows.git


keepalive_timeout (default: 2 seconds) is now supported to
disconnect idle connections.  Several new concurrency models
added include: NeverBlock, FiberSpawn and FiberPool; all of
which have only been lightly tested.  RevThreadSpawn loses
streaming input support to become simpler and faster for the
general cases.  AppPool middleware is now compatible with all
Fiber-based models including Revactor and NeverBlock.

A new document gives a summary of all the options we give you:


If you're using any of the Rev-based concurrency models, the
latest iobuffer (0.1.3) gem will improve performance.  Also,
RevThreadSpawn should become usable under MRI 1.8 with the next
release of Rev (0.3.2).

Eric Wong

More information about the rainbows-talk mailing list