1 = Rainbows! Unicorn for Comet and slow clients
3 Rainbows! is a HTTP server for {Rack}[http://rack.rubyforge.org/]
4 applications. It is based on {Unicorn}[http://unicorn.bogomips.org/],
5 but designed to handle applications that expect long request/response
6 times and/or slow clients. It is designed for Comet applications and
7 reverse proxy implementations. For Rack applications not heavily
8 bound by external dependencies, consider Unicorn instead as it simpler
13 * Designed for Rack, the standard for modern Ruby HTTP applications.
15 * Built on Unicorn, inheriting its process/socket management features
16 such as transparent upgrades and Ruby configuration DSL.
18 * Like Unicorn, it is able to stream large request bodies off the
19 socket to the application while the client is still uploading.
21 * Combines heavyweight concurrency (worker processes) with lightweight
22 concurrency (Actors/Threads), allowing CPU/memory/disk to be scaled
23 independently of client connections.
27 Rainbows! is copyright 2009 Eric Wong and contributors. It is based on
28 Mongrel and Unicorn and carries the same license.
30 Mongrel is copyright 2007 Zed A. Shaw and contributors. It is licensed
31 under the Ruby license and the GPL2. See the included LICENSE file for
34 Rainbows! is 100% Free Software.
38 === for Rack applications
40 In APP_ROOT (where config.ru is located), run:
44 Rainbows! will bind to all interfaces on TCP port 8080 by default.
46 === Configuration File(s)
48 Rainbows! will look for the config.ru file used by rackup in APP_ROOT.
50 For deployments, it can use a config file for Unicorn and
51 Rainbows!-specific options specified by the +--config-file/-c+
52 command-line switch. Rainbows! accepts all options found in
53 {Unicorn::Configurator}[http://unicorn.bogomips.org/Unicorn/Configurator.html]
54 as well as the "Rainbows!" block, so you can have the following in your
59 worker_connections 128
64 * git: git://git.bogomips.org/rainbows.git
65 * cgit: http://git.bogomips.org/cgit/rainbows.git
67 Inline patches (from "git format-patch") to the mailing list are
68 preferred because they allow code review and comments in the reply to
71 We will adhere to mostly the same conventions for patch submissions as
72 git itself. See the Documentation/SubmittingPatches document
73 distributed with git on on patch submission guidelines to follow. Just
74 don't email the git mailing list or maintainer with Rainbows! patches.
78 There is NO WARRANTY whatsoever if anything goes wrong, but let us know
79 and we'll try our best to fix it.
83 All feedback (bug reports, user/development dicussion, patches, pull
84 requests) go to the mailing list/newsgroup. Patches must be sent inline
85 (git format-patch -M + git send-email). No subscription is necessary
86 to post on the mailing list. No top posting. Address replies +To:+ (or
87 +Cc:+) the original sender and +Cc:+ the mailing list.
89 * email: mailto:rainbows-talk@rubyforge.org
90 * archives: http://rubyforge.org/pipermail/rainbows-talk
91 * subscribe: http://rubyforge.org/mailman/listinfo/rainbows-talk