偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

千萬別忽視!TIME_WAIT 堆積背后的秘密和應(yīng)對技巧

運(yùn)維 服務(wù)器運(yùn)維
TIME_WAIT 是 TCP 的“安全休眠”,高并發(fā)環(huán)境堆積很正常。掌握以下方法,就能讓 Linux 服務(wù)器更穩(wěn)、更快、更抗壓。?

平時(shí)運(yùn)維過程中,你有沒有遇到過這種情況:服務(wù)器明明沒多少請求,但 netstat -an | grep tcp | grep TIME_WAIT 一看,成千上萬條 TIME_WAIT 堆積,看著被攻擊了一樣。

別慌,這不是 Bug,這就是 TCP 的自我保護(hù)機(jī)制。今天,我?guī)湍銖氐着?TIME_WAIT,順便教你怎么解決它。

1. TIME_WAIT 是什么?

TCP 連接關(guān)閉有個(gè)“四次揮手”的過程:

  • 客戶端發(fā) FIN:我要關(guān)閉連接
  • 服務(wù)器回 ACK:收到
  • 服務(wù)器發(fā) FIN:我也要關(guān)閉
  • 客戶端回 ACK

主動關(guān)閉的一方就會進(jìn)入 TIME_WAIT,等待 2×MSL(最大報(bào)文生存時(shí)間),Linux 默認(rèn)大約 60 秒。

為什么要等?保證最后的 ACK 能被對方收到,避免網(wǎng)絡(luò)延遲導(dǎo)致數(shù)據(jù)丟失。

簡單來說,TIME_WAIT 就是 TCP 的“安全休眠模式”。

2. 為什么會產(chǎn)生大量 TIME_WAIT?

可能有以下幾個(gè)原因:

  • 短連接頻繁建立:HTTP、Redis、MySQL 的短連接模式,每次請求都是一次開關(guān)機(jī),TIME_WAIT 自然堆積。
  • 服務(wù)器主動關(guān)閉:TIME_WAIT 只出現(xiàn)在主動關(guān)閉連接的一方,如果服務(wù)端經(jīng)常主動斷開,而客戶端被動接受,就會堆很多。
  • 高并發(fā)環(huán)境:短時(shí)間內(nèi)大量連接關(guān)閉,TIME_WAIT 就像小人潮,堆積在系統(tǒng)里。

3. TIME_WAIT 有啥影響?

如果TIME_WAIT堆積過多,會出現(xiàn)下面的問題:

  • 端口耗盡:每個(gè) TIME_WAIT 占用一個(gè)端口,如果端口被短時(shí)間內(nèi)重復(fù)使用,可能會遇到“端口不夠用”的尷尬。
  • 占用內(nèi)存:每個(gè) TIME_WAIT 會占用少量內(nèi)存,但 Linux 可以處理大量 TIME_WAIT,一般不會直接 OOM。

換句話說,大量 TIME_WAIT 很正常,不必慌,除非端口用完。

4. 解決方案

(1) TCP 端口重用

允許系統(tǒng)復(fù)用 TIME_WAIT 端口,避免端口耗盡。

sysctl -w net.ipv4.tcp_tw_reuse=1

注意:只對客戶端主動發(fā)起連接有效。

(2) 縮短 TIME_WAIT 時(shí)間

減少 TIME_WAIT 保持時(shí)間,加快回收。

sysctl -w net.ipv4.tcp_fin_timeout=30

默認(rèn)約 60 秒,時(shí)間太短可能增加重傳風(fēng)險(xiǎn)。

(3) 使用長連接 / 連接池

  • HTTP:開啟 Keep-Alive,減少重復(fù)連接
  • 數(shù)據(jù)庫:使用連接池復(fù)用連接

以Nginx為例:

keepalive_timeout 65;
keepalive_requests 100;

(4) 負(fù)載均衡

使用 Nginx、LVS、HAProxy,把高并發(fā)連接分散到多臺服務(wù)器,減少單臺壓力。

核心思路:減少新連接產(chǎn)生 + 縮短或復(fù)用 TIME_WAIT + 分散壓力

TIME_WAIT 是 TCP 的“安全休眠”,高并發(fā)環(huán)境堆積很正常。掌握以上方法,就能讓 Linux 服務(wù)器更穩(wěn)、更快、更抗壓。

責(zé)任編輯:趙寧寧 來源: 運(yùn)維李哥不背鍋
相關(guān)推薦

2009-07-03 16:21:58

IT系統(tǒng)數(shù)據(jù)中心運(yùn)維管理

2011-07-08 13:34:16

2024-11-07 10:04:48

2012-02-21 09:22:45

2019-06-26 08:30:32

計(jì)算機(jī)互聯(lián)網(wǎng)iOS

2011-02-22 09:24:30

諾基亞微軟

2015-03-27 10:18:25

TCP協(xié)議CLOSE_WAIT狀服務(wù)器異常

2021-08-06 09:20:41

IT管理IT領(lǐng)導(dǎo)者CIO

2018-03-27 10:15:58

微信紅包個(gè)人信息

2014-09-10 10:14:14

2022-03-08 09:00:00

Kubernetes容器技術(shù)

2024-10-12 14:58:07

2020-12-18 15:08:17

微信詐騙移動應(yīng)用

2021-09-30 14:23:23

服務(wù)器開發(fā)工具

2017-06-09 10:16:40

2022-02-20 10:06:16

5G運(yùn)營商

2017-12-25 08:55:45

網(wǎng)站虛擬主機(jī)

2020-12-07 07:48:35

K8sDockerKubernetes

2017-04-21 13:50:37

硬盤磁盤

2020-06-11 16:15:25

Java線程池代碼
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號