2010-01-20 105 views
2

我正在處理一個非常複雜且在某些情況下存在重大性能問題的網頁(ASP.net 3.5)。它的大部分功能都使用Ajax(通過Telerik AjaxManager)。測量客戶端與服務器上的網頁性能

我希望能夠以某種方式來衡量的時間量爲下,爲每個請求:

  1. 在客戶提交請求,服務器
  2. 客戶端到服務器
  3. 在服務器初始化請求
  4. 在服務器處理請求
  5. 服務器到客戶端
  6. 客戶端渲染,JavaScript的過程ing

我監視了數據庫的流量,找不到任何明顯的罪魁禍首。另一方面,我懷疑一些Ajax交互導致性能問題。但是,直到我有辦法跟蹤所涉及的時間,進行基線測量並在我調整之後衡量性能時,在這個問題上很難解決。

那麼測量所有這些的最好方法是什麼?有一種工具可以做到嗎? FireBug和日誌插入頁面生命週期的不同位置?

回答

3

FireBug插件的Net tab爲FireFox提供了有關所有客戶端活動的時間的信息。

服務器端日誌記錄需要記錄花費在服務器端活動上的時間量:使用Global.asax中的BeginRequest和EndRequest事件來記錄請求的總體開始和結束時間,並在代碼後面登錄代碼記錄實際頁面的時間。

1

查看IEInspector的HTTPAnalyser。我發現這對檢查http活動是非常寶貴的。

1

有一個HTTP監視器工具可以幫助您調用HttpWatch。基本版是免費的。

我用它做了Web應用程序的性能分析,它顯示了什麼是客戶端延遲/服務器延遲/網絡延遲。我只是喜歡它:)

2

我想,你正在尋找一個服務或工具來監控你的XHR或FETCH(AJAX)請求。您可以嘗試https://www.atatus.com,它爲實時用戶提供AJAX監控。