簡單的問題是,通過FastCommonAccessLogValve使用AccessLogValve是否存在確定的,可量化的開銷?使用JBoss的AccessLogValve記錄請求的性能影響是什麼?
如果我在JBoss 4.2.3GA中啓用訪問日誌,我可以使用FastCommonAccessLogValve或AccessLogValve(如http://tomcat.apache.org/tomcat-5.5-doc/config/valve.html所述)。 FastCommonAccessLogValve針對生產使用進行了優化,但不允許我記錄請求處理的時間,這是我之後的關鍵信息。
我已經運行了一些比較負載測試,將我的應用程序置於輕負載下,以便AccessLogValve的開銷不會因服務器負載造成的較長處理時間而隱藏。然而,相比於FastCommonAccessLogValve或無日誌記錄,AccessLogValve的任何開銷都小於我從應用程序本身獲得的變化。例如,與不帶日誌閥的基準測試相比,我的平均測試時間爲99.7%(啓用AccessLogValve),103.4%的時間(另一次運行AccessLogValve時啓用)或105.4%的時間(與FastCommonAccessLogValve)啓用。
這個範圍的結果表明開銷是〜5%嗎?或者我需要花費時間,以便在沒有啓用日誌記錄的情況下,我的負載測試產生更加一致的定時?這是一個複雜的應用程序,所以我不知道這是可能的
謝謝。這就說得通了。最後,我們決定依賴其他日誌(Web服務器日誌),但可能會重新訪問JBoss日誌記錄。 – 2012-03-21 09:04:55