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.
Rainbows! is designed for the odd, corner-case requests that unicorn is poorly suited for.
More scalable concurrency models introduce additional complexity that unicorn users and developers are uncomfortable with for the common cases.
Key Features
- Designed for Rack, the standard for modern Ruby HTTP applications.
- Built on unicorn, inheriting its process/socket management features such as transparent upgrades and Ruby configuration DSL.
- As with Unicorn, it is able to stream large request bodies off the socket to the application while the client is still uploading. Since Rainbows! can handle slow clients, this feature is more useful than it is with Unicorn.
- Combines heavyweight concurrency (worker processes) with lightweight concurrency (Events/Fibers/Actors/Threads), allowing CPU/memory/disk to be scaled independently of client connections.
- Designed for:
- 3rd-party APIs (to services outside your control/LAN).
- OpenID consumers (to providers outside your control/LAN).
- Reverse proxy implementations with editing/censoring (to upstreams outside your control/LAN).
- Comet.
- BOSH (with slow clients).
- HTTP server push.
- Long polling.
- Reverse AJAX.
Website: yhbt.net/rainbows
Support:
Developer: Rainbows! contributors
License: GNU General Public License v3.0
Rainbows! is written in Ruby. Learn Ruby with our recommended free books and free tutorials.
Related Software
| Ruby Application Servers | |
|---|---|
| Puma | Concurrent web server for Ruby and Rack |
| Phusion Passenger | Web server and application server for Ruby, Python and Node.js |
| unicorn | HTTP server for Rack applications |
| Rainbows! | HTTP server for sleepy Rack applications based on Unicorn |
| yahns | Sleepy, multi-threaded, non-blocking application server for Ruby |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

