[Checkins] SVN: zc.ngi/trunk/src/zc/ngi/async.py - make buffer size a constant
Benji York
benji at zope.com
Wed Apr 15 18:16:39 EDT 2009
Log message for revision 99206:
- make buffer size a constant
- up the listen backlog to 255 (makes about a 3x performance differnce
under heavy loads of short connections); should probably be
configurable instead
Changed:
U zc.ngi/trunk/src/zc/ngi/async.py
-=-
Modified: zc.ngi/trunk/src/zc/ngi/async.py
===================================================================
--- zc.ngi/trunk/src/zc/ngi/async.py 2009-04-15 22:03:29 UTC (rev 99205)
+++ zc.ngi/trunk/src/zc/ngi/async.py 2009-04-15 22:16:39 UTC (rev 99206)
@@ -46,6 +46,8 @@
errno.EINTR: 0,
}
+BUFFER_SIZE = 8*1024
+
class dispatcher(asyncore.dispatcher):
def __init__(self, sock, addr, map=_map):
@@ -141,7 +143,7 @@
while 1:
try:
- d = self.recv(8192)
+ d = self.recv(BUFFER_SIZE)
except socket.error, err:
if err[0] in expected_socket_read_errors:
return
@@ -158,7 +160,7 @@
self.logger.exception("handle_input failed")
self.handle_close("handle_input failed")
- if len(d) < 8192:
+ if len(d) < BUFFER_SIZE:
break
def handle_write_event(self):
@@ -345,7 +347,7 @@
self.set_reuse_addr()
self.logger.info("listening on %s", self.addr)
self.bind(self.addr)
- self.listen(5)
+ self.listen(255)
notify_select()
def handle_accept(self):
@@ -425,7 +427,7 @@
def handle_read(self):
try:
- self.recv(8192)
+ self.recv(BUFFER_SIZE)
except socket.error:
return
More information about the Checkins
mailing list