From 9c5ce5b2f86591977727b7fdaa8fcc50aea089d6 Mon Sep 17 00:00:00 2001 From: Eric Wong Date: Mon, 19 Oct 2009 10:20:33 -0700 Subject: rev: update documentation for this model --- lib/rainbows/rev.rb | 14 ++++---------- 1 file changed, 4 insertions(+), 10 deletions(-) diff --git a/lib/rainbows/rev.rb b/lib/rainbows/rev.rb index 67c2432..602a02a 100644 --- a/lib/rainbows/rev.rb +++ b/lib/rainbows/rev.rb @@ -12,8 +12,10 @@ module Rainbows # thousands of simultaneous client connections, but with only a # single-threaded app dispatch. It is suited for slow clients and # fast applications (applications that do not have slow network - # dependencies). It does not require your Rack application to - # be reentrant or thread-safe. + # dependencies) or applications that use DevFdResponse for deferrable + # response bodies. It does not require your Rack application to be + # thread-safe, reentrancy is only required for the DevFdResponse body + # generator. # # Compatibility: Whatever \Rev itself supports, currently Ruby # 1.8/1.9. @@ -22,14 +24,6 @@ module Rainbows # allows the Rack application to process data as it arrives. This # means "rack.input" will be fully buffered in memory or to a # temporary file before the application is entered. - # - # Caveats: this model can buffer all output for slow clients in - # memory. This can be a problem if your application generates large - # responses (including static files served with Rack) as it will cause - # the memory footprint of your process to explode. If your workers - # seem to be eating a lot of memory from this, consider the - # {mall}[http://bogomips.org/mall/] library which allows access to the - # mallopt(3) function from Ruby. module Rev -- cgit v1.2.3-24-ge0c7