apache TIME_WAIT解決辦法
最近發現apache與負載均衡器的的連接數過多,而且大部分都是TIME_WAIT,調整apache2.conf後也沒效果,最後百度到如下解決方案
通過調整內核參數解決
vi /etc/sysctl.conf
編輯文件,加入以下內容:
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 30
然後執行 /sbin/sysctl -p 讓參數生效。
net.ipv4.tcp_syncookies = 1 表示開啟 SYN Cookies 。當出現 SYN 等待隊列溢出時,啟用 cookies 來處理,可防范少量 SYN 攻擊,默認為 0 ,表示關閉;
net.ipv4.tcp_tw_reuse = 1 表示開啟重用。允許將 TIME-WAIT sockets 重新用於新的 TCP 連接,默認為 0 ,表示關閉;
net.ipv4.tcp_tw_recycle = 1 表示開啟 TCP 連接中 TIME-WAIT sockets 的快速回收,默認為 0 ,表示關閉。
net.ipv4.tcp_fin_timeout 修改系統默認的 TIMEOUT 時間