減少linux伺服器大量TIME WAIT

2021-07-03 04:31:19 字數 617 閱讀 5687

將專案部署到linux上後,發現系統有大量的time_wait狀態的鏈結,大量time_wait狀態的鏈結不能被及時**導致的結果就是系統可用socket被耗盡而無法處理新的請求。對於http協議的短連線請求,應該要防止產生大量的time_wait,我們可以通過設定linux網路引數來達到目的,步驟如下:

1、編輯sysctl.conf

#cd /etc/

#vim sysctl.conf

2、在sysctl.conf新增下面引數儲存退出(按esc鍵後輸入:wq!儲存退出) #

開啟syn cookies,預設為0

net.ipv4.tcp_syncookies = 1

#開啟重用time_wait,預設為0

net.ipv4.tcp_tw_reuse = 1

#開啟快速**time_wait,預設為0

net.ipv4.tcp_tw_recycle = 1

#修改保持fin-wait-2狀態的時間,預設為60s

net.ipv4.tcp_fin_timeout = 30

通過上面的修改後基本可以達到讓系統不會產生大量time_wait。

對於linux伺服器網路效能的調優可以在baidu找到比較詳細的文件。

減少Linux伺服器TIME WAIT過多問題

time wait狀態的意義 客戶端與伺服器端建立tcp ip連線後關閉socket後,伺服器端連線的埠 狀態為time wait 是不是所有執行主動關閉的socket都會進入time wait狀態呢?有沒有什麼情況使主動關閉的socket直接進入closed狀態呢?主動關閉的一方在傳送最後乙個 a...

如何減少Linux伺服器TIME WAIT過多

time wait狀態的意義 客戶端與伺服器端建立tcp ip連線後關閉socket後,伺服器端連線的埠狀態為time wait 是不是所有執行主動關閉的socket都會進入time wait狀態呢?有沒有什麼情況使主動關閉的socket直接進入closed狀態呢?主動關閉的一方在傳送最後乙個 ac...

減少Linux伺服器TIME WAIT過多問題

time wait狀態的意義 客戶端與伺服器端建立tcp ip連線後關閉socket後,伺服器端連線的埠 狀態為time wait 是不是所有執行主動關閉的socket都會進入time wait狀態呢?有沒有什麼情況使主動關閉的socket直接進入closed狀態呢?主動關閉的一方在傳送最後乙個 a...