2012-09-18 141 views
1

我需要計算壓力測試環境下的內部響應時間。 我可以使用從不同服務器運行的pylot進行負載測試。我如何計算不包括網絡延遲的內部響應時間。我可以從同一臺機器上運行pylot,但這似乎不是一個好主意。 我可以考慮使用log4j等日誌記錄工具和分別接收和發送請求和響應的日誌時間。計算基於java的服務器的內部響應時間

是否有其他好的方法來做到這一點...或者人們目前如何做到這一點?

回答

1

我通常會創建一個servlet過濾器或類似的東西,在派發到servlet之前捕獲服務器中的請求/響應,並記錄servlet在這裏所花費的時間量。

我以前做過這件事的時候,我已經記錄了servlet過濾器中的統計信息並計算了最小/最大/平均值,並將此信息顯示在另一個servlet或JMX中 - 這使得生產問題診斷變得非常簡單。我還使用過濾器記錄請求和響應,以便日誌文件記錄每個訪問。

另一種方法是通過ping或類似方法記錄平均網絡延遲,然後從記錄的客戶端時間中減去平均網絡延遲。不要忘記減去請求的迴應。然而,這非常粗糙,並沒有考慮(例如)在服務器端的流解壓縮/編組等。