Apache-2.2

伺服器響應時間長

  • July 31, 2013

我們有一個高流量的網站,高峰時有1000並髮使用者,最低時同時有100使用者。平均而言,它必須40,000訪問100,000一天。問題是有時載入速度很慢(我們將這次命名為災難時間:)),在那段時間我們嘗試用 載入網站時Firefox,它顯示waiting...(我與世界各地的許多提供商一起嘗試過)

我們在災難時監控伺服器CPU load,,,Memory Usage是正常的。MySQL也沒有任何查詢的慢查詢日誌1 secApache沒有任何錯誤。iotop沒有顯示任何導致這場災難的東西。

非常有趣的是,災難時間和高峰時間沒有任何關係。有時災難發生在300並髮使用者和另一個不同的時間。我找不到他們之間的任何關係。

如何在災難發生時追踪數據包?我想知道這場災難是我們數據中心的故障(例如上游或防火牆)還是我們的伺服器故障(例如Apache配置、Web 應用程序或其他我不知道的事情)。

對於其他數據,只需添加評論,然後我編輯我的問題以提供您需要回答的數據。

並髮使用者/訪問的數量與系統的容量/性能無關 - 這完全與並發連接以及這些請求在做什麼有關。

將請求響應時間添加到您的伺服器日誌將是一個開始 - 如果這些不能反映問題,那麼問題可能出在網路上。我注意到您在問題中沒有提及您的網路伺服器日誌-您檢查了嗎?

您認為您的流量很大,而您的問題暗示您只有一台伺服器。為什麼?(多台伺服器會增加這種特定的複雜性,例如負載分配,但也會簡化大部分診斷,但它不會影響性能和可用性)。

跟踪連接的數量及其狀態也為診斷問題提供了必要的數據。

如何在災難發生時追踪數據包?

使用數據包擷取程序 - 這可以在從客戶端到伺服器的任何地方執行。我使用 wireshark(在 Linux、MSWindows 和其他平台上可用)

如果您提到您的伺服器正在使用什麼版本/MPM 以及它正在執行什麼作業系統,那將會很有用。

引用自:https://serverfault.com/questions/527522