about summary refs log tree commit homepage
path: root/TUNING
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2009-10-05 02:44:18 -0700
committerEric Wong <normalperson@yhbt.net>2009-10-05 02:47:01 -0700
commit0be3542b4e16972e0ec5ff354625f45ea8241883 (patch)
treec84ee04f6f653d9c698fd06cdbf5b9f549595e03 /TUNING
parentb5a0a2cce2c10ade80c1bc9a54d73194bb520776 (diff)
downloadrainbows-0be3542b4e16972e0ec5ff354625f45ea8241883.tar.gz
Diffstat (limited to 'TUNING')
-rw-r--r--TUNING31
1 files changed, 31 insertions, 0 deletions
diff --git a/TUNING b/TUNING
new file mode 100644
index 0000000..9f5f58d
--- /dev/null
+++ b/TUNING
@@ -0,0 +1,31 @@
+= Tuning \Rainbows!
+
+Most of the {tuning notes}[http://unicorn.bogomips.org/TUNING.html]
+apply to \Rainbows! as well.  \Rainbows! is not particularly optimized
+at the moment and is designed for applications that spend large amounts
+of the time waiting on network activity.  Thus memory usage and memory
+bandwidth for keeping connections open are often limiting factors as
+well.
+
+== \Rainbows! configuration
+
+* Don't set +worker_connections+ too high.  It is often better to start
+  denying requests and only serve the clients you can than to be
+  completely bogged down and be unusable for everybody.
+
+* Increase +worker_processes+ if you have resources (RAM/DB connections)
+  available.  Additional worker processes can better utilize SMP, are more
+  robust against crashes and are more likely to be fairly scheduled by
+  the kernel.
+
+== nginx configuration
+
+If you intend to use nginx as a reverse-proxy in front of \Rainbows!  to
+handle Comet applications, make sure you disable proxy response
+buffering in nginx:
+
+  proxy_buffering off;
+
+This can be disabled on a per-backend basis in nginx, so under no
+circumstances should you disable response buffering to Unicorn
+backends, only to \Rainbows! backends.