2014-11-25 60 views
15

我測量我的網站的性能基於HTML5提供的性能對象,我想知道我的應用程序出了什麼問題,我也想記錄這些性能我的本地數據庫中的其他最終用戶的對象,以便我從他們那裏獲得信息,但我不太瞭解每個屬性的含義,比如connectStart,connectEnd延遲的原因可能是什麼......我創建了一個映射按我的知識,我需要從社區輸入這...這將是非常有幫助的其他人知道這個藏漢圖像中顯示使用HTML5的性能和performance.timing對象測量JS性能

var issueList = { 
    'connectStart':   'Network issue', 
    'connectEnd':   'Server is not responding fast with SSL handshake', 
    'domainLookupStart': 'Network issue', 
    'domainLookupEnd':  'Network issue', 
    'fetchStart':   'Slow browser', 
    'redirectStart':  'Network issue', 
    'redirectEnd':   'Busy server', 
    'requestStart':   'Network issue', 
    'responseStart':  'Server is slow', 
    'domLoading':   'Low internet bandwidth', 
    'unloadEventStart':  'Slow browser', 
    'unloadEventEnd':  'Slow browser, browser processes are too heavy', 
    'navigationStart':  'Slow browser', 
    'responseEnd':   'Network issue', 
    'domInteractive':  'Browser issue', 
    'domContentLoadedEventStart': 'Network issue', 
    'domContentLoadedEventEnd':  'Network issue', 
    'domComplete':   'Too much DOM manipulation', 
    'loadEventStart':  'Unknown', 
    'loadEventEnd':   'Low JS performance, either not optimized JS or browser is slow' 
}; 

序列的過程中信息 Perfromance Timing Overview

我也創建了這個

同樣的方式JSFiddle,我也想衡量我的網頁AJAX請求的性能,我想使用Ajax請求readyState的,所以我想知道是什麼可能的原因有采取

State Description      Reason 
0  The request is not initialized Slow JS execution 
1  The request has been set up  Slow JS execution 
2  The request has been sent  Slow Netowkr Connection 
3  The request is in process  Slow Server response 
4  The request is complete   Slow server processing 

的原因,所有的狀態變化之間的時間後我想這樣做是因爲,有時候,我們得到了一個 投訴,我們APPLICAT離子有點慢,所以在這些情況下,我們可以讀取該用戶的性能對象,並且還可以讀取整體性能對象 。我們還可以讀取各種性能對象,同時 我們的應用程序和其他時間的高峯使用,並且要測量 應用程序的哪一部分需要較長時間加載。在 同時它是一個產品將發展與時間如此 供將來參考我也可以使用這個數據作爲基準。所以我只 重點是理解這個目標完全

另外,不要讓我知道是否還有其他的方法(如果我走冤枉路)...

+1

看看.http://www.html5rocks.com/en/tutorials/webperformance/basics/ – 2015-04-15 14:09:54

+1

http://kaaes.github.io/timing – 2015-04-15 14:15:13

回答

3

我也想記錄這些我本地數據庫中其他最終用戶的性能對象

讓我們從這個方面入手。你不需要自己改造這一切。您的時間在改善您的網站上花費的時間要好得多,而不是創建您自己的監控解決方案。

Google Analytics(分析)實際上會爲您追蹤時間對象,因此您可以在此處進行檢查。 New Relic也是這樣做的,並且更專注於開發人員,跟蹤服務器端的事情。大概有100個人可以選擇。

,但我不是很熟悉的東西每個屬性意味着

,這些文件的規範定義是W3C推薦:https://www.w3.org/TR/navigation-timing/

我創建了一個地圖按我的知識,但我需要此社區的輸入

我建議不是創建這樣的地圖,至少按照您迄今爲止定義的方式。每個事件都意味着特定的事物假設重定向與網絡問題或繁忙的服務器有任何關係都沒有意義。當然,緩慢的重定向可能是由於這些項目...但它可能是由於其他100件事情,或者甚至是有意的。還要考慮到世界各地的網絡條件差異很大。簡而言之,定義是最好的。

如果您對於含義有特定疑問,並且W3C規範對您而言不夠清晰,我建議您詢問關於您所困惑的特定項目的具體問題。

+0

我想要做到這一點的原因是因爲,有時我們會抱怨我們的應用程序有點慢,所以在這些情況下,我們可以讀取用戶的性能對象,並閱讀整體性能對象。我們還可以讀取各種性能對象,同時還可以高度使用我們的應用程序和其他時間,並且要測量應用程序的哪一部分需要較長時間才能加載。同時它也是一種隨時間發展的產品,以便將來參考,我也可以使用這些數據作爲基準。所以我唯一的關注點就是完全理解這個對象 – 2016-07-10 11:59:55

+0

@ParagBhayani是的,看你的應用程序性能是很好的......但是沒有理由自己記錄那個性能**。相反,如果您使用現有的經過充分測試的系統,您將花費時間修復您的應用程序,並知道所有內容都已正確記錄。您還可以更輕鬆地進行分析。 – Brad 2016-07-10 16:17:15

+0

仍然我在想,我沒有得到答案,我正在尋找,感謝您的幫助:) – 2016-07-13 07:58:43