summary refs log tree commit homepage
path: root/lib/rainbows/client.rb
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-05-03 01:05:11 +0000
committerEric Wong <normalperson@yhbt.net>2011-05-03 01:05:11 +0000
commita7f5f17ba2047ef7143465f612007ea81871a79e (patch)
treefa93430a846c83dd1c79c41f193e4dd73a08f516 /lib/rainbows/client.rb
parent01381ab4dfeb032c85e72724df889c7aa381aa32 (diff)
We're changing our default to 1K buffers to save memory.  This
should reduce memory usage of idle clients and lower pressure on
the MRI GC.  Rails applications using session cookies (the
default) may want to up this to 2K or more.
Diffstat (limited to 'lib/rainbows/client.rb')
-rw-r--r--lib/rainbows/client.rb6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/rainbows/client.rb b/lib/rainbows/client.rb
index 7387c44..4608f53 100644
--- a/lib/rainbows/client.rb
+++ b/lib/rainbows/client.rb
@@ -4,6 +4,8 @@ require "io/wait"
 
 # this class is used for most synchronous concurrency models
 class Rainbows::Client < Kgio::Socket
+  include Rainbows::ProcessClient
+
   def read_expire
     Time.now + Rainbows.keepalive_timeout
   end
@@ -16,7 +18,7 @@ class Rainbows::Client < Kgio::Socket
   def timed_read(buf)
     expire = nil
     begin
-      case rv = kgio_tryread(0x1000, buf)
+      case rv = kgio_tryread(HBUFSIZ, buf)
       when :wait_readable
         return if expire && expire < Time.now
         expire ||= read_expire
@@ -26,6 +28,4 @@ class Rainbows::Client < Kgio::Socket
       end
     end while true
   end
-
-  include Rainbows::ProcessClient
 end