On Tue, Mar 30, 2010 at 10:59:47AM -0400, Amanda Machutta wrote: > Just some more debugging data -- this is debuggng from haproxy....I marked > where the pause happens here as well: > > Available polling systems : > select : pref=150, test result OK > Total: 1 (1 usable), will use select. > Using select() as the polling mechanism. > 00000000:services.accept(0005)=0006 from [24.99.160.41:52838] > 00000001:http_proxy.accept(0003)=0008 from [24.99.160.41:52839] > 00000001:http_proxy.clireq[0008:ffff]: GET /intelliqueue/agentui/ HTTP/1.1 > 00000001:http_proxy.clihdr[0008:ffff]: Host: www.cfpolitical.com > 00000001:http_proxy.clihdr[0008:ffff]: User-Agent: Mozilla/5.0 (Windows; U; > Windows NT 6.0; en-US; rv:1.9.2.2) Gecko/20100316 Firefox/3.6.2 (.NET CLR > 3.5.30729) > 00000001:http_proxy.clihdr[0008:ffff]: Accept: > text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 > 00000001:http_proxy.clihdr[0008:ffff]: Accept-Language: en-us,en;q=0.5 > 00000001:http_proxy.clihdr[0008:ffff]: Accept-Encoding: gzip,deflate > 00000001:http_proxy.clihdr[0008:ffff]: Accept-Charset: > ISO-8859-1,utf-8;q=0.7,*;q=0.7 > 00000001:http_proxy.clihdr[0008:ffff]: Keep-Alive: 115 > 00000001:http_proxy.clihdr[0008:ffff]: Connection: keep-alive > 00000001:http_proxy.clihdr[0008:ffff]: Cookie: CFID=408; CFTOKEN=12213899; > JSESSIONID=b6302e0e4a8d377c4e6e > 00000001:http_proxy.srvrep[0008:0009]: HTTP/1.1 200 OK > 00000001:http_proxy.srvhdr[0008:0009]: Connection: close > 00000001:http_proxy.srvhdr[0008:0009]: Date: Tue, 30 Mar 2010 14:55:39 GMT > 00000001:http_proxy.srvhdr[0008:0009]: Server: Microsoft-IIS/6.0 > 00000001:http_proxy.srvhdr[0008:0009]: X-Powered-By: ASP.NET<http://asp.net/> > 00000001:http_proxy.srvhdr[0008:0009]: Set-Cookie: > CFAUTHORIZATION_IntelliQueue=;expires=Mon, 30-Mar-2009 14:55:39 GMT;path=/ > 00000001:http_proxy.srvhdr[0008:0009]: Content-Type: text/html; > charset=UTF-8 > 00000000:services.srvcls[0006:0007] > 00000000:services.clicls[0006:0007] > 00000000:services.closed[0006:0007] > > <!--- 16 second pause ---> > > 00000001:http_proxy.srvcls[0008:0009] > 00000001:http_proxy.clicls[0008:0009] > 00000001:http_proxy.closed[0008:0009]
These 16 seconds are induced by your server. It sends "Connection: close" in the response, indicating that only the end of connection will mark the end of the data. There is no content-length nor chunked encoding, so the client really has to wait for the close. I suspect that these 16 seconds correspond to the server's keep-alive timeout, and that it artificially keeps the connection opened hoping to do some keep-alive despite the fact that it says "close". That would simply be a bug with the server in this case. Can you take a verbose capture of the client<->server exchanges and haproxy<->server exchanges (using tcpdump -XSs0) ? Regards, Willy

