Networking

Netstat 偵聽隊列

  • December 22, 2015

我可以從 netstat 偵聽隊列中收集哪些資訊?

查看手冊頁我可以看到在 netstat 中使用“-L”它顯示了監聽隊列的大小。

它告訴我有關每一列的資訊:

  • 第一個未接受的連接數
  • 第二個未接受的不完整連接數
  • 第三個最大排隊連接數

我注意到,每當第一列趨於增加時,我的應用程序就會變得反應遲鈍,並且 Nagios 檢查打開的套接字連接開始失敗。

是否典型/預期有非零數量的未接受 TCP 連接?或者這是應用程序問題的跡象?

範例($port 是實際埠號):

netstat -La | grep $port
tcp4  22/0/128        *.$port

通常,當應用程序響應時,輸出如下所示:

tcp4  0/0/128        *.$port

你沒有回答你自己的問題嗎?當存在未接受的連接時,應用程序會變得遲緩。如果您想知道這種行為是否是預期的,那麼是的。如果傳入連接正在排隊,則在隊列中花費的時間會增加客戶端的請求延遲,從而導致您描述的響應緩慢。要解決此問題,您需要減少傳入連接的數量(通常不是一個選項)或向應用程序添加資源。後者可以通過增加一般系統可用的資源或(這通常是更好的選擇)在負載平衡集群中添加節點來實現。

引用自:https://unix.stackexchange.com/questions/250909