Apache出現大量的CLOSE_WAIT狀態連線

日期:2008-07-05  作者:喜騰小二  來源:PHPChina


作者:老王

一臺執行Apache的Web伺服器,前麵有Squid,出現大量的CLOSE_WAIT連線,直接占滿TCP隊列,導緻Apache失去回應。

一般來說,在一次正常的HTTP連線結束時,按正常的次序應該是伺服器先發出FIN信號,用戶端確認,然後用戶端再發出FIN信號,服務端確認。如果用戶端因為某種原因先於服務端發出了FIN信號,就會導緻服務端被動關閉。

-------------------------------------

透過下列Linux內核參數來解決問題:

sysctl -w
net.ipv4.tcp_keepalive_time=30
sysctl -w
net.ipv4.tcp_keepalive_probes=2
sysctl -w
net.ipv4.tcp_keepalive_intvl=2

注意:Linux的內核參數我調整的可能有些猛,到底合不合適要注意觀察。

參考連結:
http://ipsysctl-tutorial.frozentux.net/
http://haka.sharera.com/blog/BlogTopic/32309.htm

<<<返回技術中心

技術文章

站內新聞

我要啦免费统计