On Wed, Mar 09, 2011 at 08:50:37AM -0800, Justin Erenkrantz wrote: > On Wed, Mar 9, 2011 at 8:28 AM, Philip Martin > <philip.mar...@wandisco.com> wrote: > > 0.000054 epoll_wait(3, {{EPOLLOUT, {u32=30583944, u64=30583944}}}, 16, > > 3600000000) = 1 <0.000011> > > As best as I can tell, that strace isn't matching your earlier > description. The last epoll_wait is taking 0.000011 seconds? --
Smells like Nagle to me - looks like serf is turning Nagle *on* not off... ("nodelay off" == "delay on") - try this? Index: outgoing.c =================================================================== --- outgoing.c (revision 1440) +++ outgoing.c (working copy) @@ -201,7 +201,7 @@ /* Disable Nagle's algorithm */ if ((status = apr_socket_opt_set(skt, - APR_TCP_NODELAY, 0)) != APR_SUCCESS) + APR_TCP_NODELAY, 1)) != APR_SUCCESS) return status; /* Configured. Store it into the connection now. */