- mod_status shows loads of children in Keepalive state with Seconds Since much higher than
KeepAliveTimeout - eventually the number of these reaches MaxClients, wedging the server
- hung process backtrace like this:
(gdb) bt
#0 0x2814d118 in read () from /usr/lib/libc.so.4
#1 0x2830e69f in ssl_io_hook_read () from /usr/local/libexec/apache/libssl.so
#2 0x806d256 in ap_hook_call_func ()
#3 0x806ce7b in ap_hook_call ()
#4 0x8051bea in ap_read ()
There’s some google-able posts about SSL blocking reads, but
- They’re old posts
- The hung threads aren’t actually on a SSL VirtualHost
Since it’s a busy server there’s this tradeoff between KeepAlives helping by reducing HTTP connection setup / teardown and the need to churn Apache children fast. Since I didn’t have any joy working out the problem, I’ve got around it by just turning KeepAlives off.
Still, it bugs me.
Leave a Reply
Recent articles
- cron
(Wednesday, 02. 24. 2010 – 6 Comments) - SOAP in unexpected “actually, quite easy” incident.
(Wednesday, 09. 30. 2009 – No Comments) - ipmitool for OSX
(Tuesday, 09. 29. 2009 – No Comments) - vxargs – visual parallel xargs
(Friday, 09. 18. 2009 – 1 Comment)
Archives
- February 2010
- September 2009
- August 2009
- January 2009
- September 2008
- August 2008
- July 2008
- May 2008
- April 2008
- February 2008
- January 2008
- November 2007
- October 2007
- September 2007
- August 2007
- December 2006
- November 2006
- August 2006
- June 2006
- May 2006
- March 2006
- February 2006
- January 2006
- December 2005
- November 2005
- October 2005