When TCP_DEFER_ACCEPT is enabled on the listening socket:

- HTTP-Keep-Alive requests get a boost;

- non-HTTP-Keep-Alive requests are delayed after a while.

The problem happens with high concurrencies only.

This has been tested with various HTTP servers and is a consistant
behavior on Linux Ubuntu 8.1+.

The higher the value for TCP_DEFER_ACCEPT, the faster HTTP servers get
into trouble (when they receive ab connections without -k):

ab -t 100 -c900 http://a.b.c.d/100.html    (a 100-byte file)

Anyone having a clue why this is happening?

(HTTP Keep-Alives being a persistant TCP connection, it is strange to see 
TCP_DEFER_ACCEPT giving them a boost)
(inversely, non-HTTP Keep-Alives being new TCP connections, it is strange to 
see TCP_DEFER_ACCEPT delaying them)

Thanks for any pointer.

** Changed in: apache2 (Ubuntu)
       Status: Triaged => Invalid

** Converted to question:
   https://answers.launchpad.net/ubuntu/+source/apache2/+question/99261

-- 
TCP_DEFER_ACCEPT causes random HTTP connection failures in load-balanced 
web-server farms
https://bugs.launchpad.net/bugs/134274
You received this bug notification because you are a member of Ubuntu
Server Team, which is subscribed to apache2 in ubuntu.

-- 
Ubuntu-server-bugs mailing list
Ubuntu-server-bugs@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-server-bugs

Reply via email to