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.
- http://rainbows.rubyforge.org/
- [email protected]
- git://git.bogomips.org/rainbows.git
Changes:
Cool.io (new version of Rev) support is explicitly added
(it always worked before). “:Coolio” may be used in place
of “:Rev” anywhere in your Rainbows! config file.
There is a new “keepalive_requests” config directive to limit
the number of requests a single connection may make (default:
100, same as nginx). This may be useful for better
load-balancing characteristics.
The old “Rev” prefixes remain supported as long as Cool.io
remains compatible with Rev (likely forever).
Bug fixes:
- Rainbows::ThreadTimeout middleware with multiple clients
- large, pipelined upload errors with Revactor+Coolio(Rev)
- high CPU usage for maintaining idle keepalive on Fiber
- needless ThreadPool wakeups
- request env prematurely cleared keepalive requests,
breaking some middlewares such as Clogger. - “close” not called on body if wrapper and sendfile used together
Various code cleanups, and our RDoc website is JavaScript-free.
See the ChangeLog[1] or git for all changes.