電腦店訊
最近在服務器上查看系統日志的時候發現大量的報錯,內容如下:
localhost kernel: TCP: time wait bucket table overflow
google一番之後,發現是由於服務器的連接數都處於“TIME_WAIT ”狀態,然後用命令查詢了下:
# netstat -an | awk '/^tcp/ {++S[$NF]} END {for(a in S) print a, S[a]}' | sort -rn
LISTEN 11
ESTABLISHED 514
CLOSE_WAIT 19
TIME_WAIT 864
由於太多TIME_WAIT 導致服務器對客戶端的連接不能進行及時處理。
解決的方法就是更改系統配置參數:
#vi /etc/sysctl.conf
將net.ipv4.tcp_max_tw_buckets的數值增大
然後 sysctl -p 生效