摘要:可優(yōu)化部分請求已被暫停,以等待將要釋放的不可用套接字。合并小文件減少請求。請求被暫停,上,瀏覽器僅允許每個源擁有六個連接。主要是對服務(wù)器的保護。中的所有原因加上代理協(xié)商所用的任何時間。等待初始響應(yīng)所用的時間,也稱為至第一字節(jié)的時間。
前言
如果我們發(fā)現(xiàn)自己頁面加載慢,通常會打開DevTools的Network欄找到具體的慢的請求,那他到底慢在哪呢?
Timing包含的內(nèi)容Queuing
Stalled/Blocking
Proxy Negotiation
DNS Lookup
Initial Connection / Connecting
SSL
Request Sent / Sending
Waiting (TTFB)
Content Download / Downloading
1、Queuing主要是資源加載的排隊
不可優(yōu)化部分
請求被渲染引擎推遲,如腳本/樣式會優(yōu)先,圖片推遲。
生成磁盤緩存條目所用的時間(通常非常迅速)。
可優(yōu)化部分
請求已被暫停,以等待將要釋放的不可用TCP套接字。
瀏覽器線程池不是無限的,需要等待socket(TCP)釋放。 合并小文件減少請求。
請求被暫停,HTTP 1上,瀏覽器僅允許每個源擁有六個TCP連接。
主要是對服務(wù)器的保護。 可以把資源放到不同的域名上,參考`域名發(fā)散`。2、Stalled/Blocking
請求等待發(fā)送所用的時間。Queuing中的所有原因加上代理協(xié)商所用的任何時間。
不可優(yōu)化部分
Queuing中不可優(yōu)化部分
代理協(xié)商
可優(yōu)化部分
Queuing中可優(yōu)化部分
相同的N次請求 緩存鎖,一般資源加載不會加載相同的,但ajax有可能,加timestamp可解決。
注意1:
Stalled是Queuing之后的下一個狀態(tài),Stalled開始時已經(jīng)出隊,他們太顯著的差別(是否使用proxy/ssl),他們之間沒有and/or/parent/child的關(guān)系,有建議將queueing/stalled改名為postponed/awaiting socket,具體可以看看chromium issue。
注意2:
另外,同源鏈接復(fù)用可能引發(fā)這樣的問題,由于之前存在可用鏈接,此時瀏覽器希望重用之前的連接以節(jié)省資源,用之前的一個socket去發(fā)起連接,后收到服務(wù)器返回的鏈接已重置/不存在,再從原本可用鏈接中找可用鏈接,引發(fā)長時間等待,具體可以看看 chrome-stalled-problem-resolving-process3、Proxy Negotiation
與代理服務(wù)器連接協(xié)商所用的時間。
主要是瀏覽器通過代理服務(wù)器去服務(wù)目標服務(wù),如本地代理Fiddler,一般無法優(yōu)化。
4、DNS LookupDNS查詢所用的時間
可優(yōu)化部分
不要有太多的新域名(可能遞歸查詢繞地球一圈),參考域名收斂。
減少DNS解析路徑(如果內(nèi)部有很多DNS服務(wù)器解析)。
5、Initial Connection / Connecting建立連接所用的時間,包括TCP 握手/重試和協(xié)商 SSL的時間。
6、SSL完成SSL握手所用的時間。
可優(yōu)化部分
需要區(qū)分好什么資源需要https,什么需要http。
7、Request Sent / Sending發(fā)出網(wǎng)絡(luò)請求所用的時間。通常不到一毫秒。
8、Waiting (TTFB)等待初始響應(yīng)所用的時間,也稱為至第一字節(jié)的時間。
可優(yōu)化部分
* 服務(wù)器響應(yīng)速度 * 服務(wù)器網(wǎng)絡(luò)帶寬9、Content Download / Downloading
接收響應(yīng)數(shù)據(jù)所用的時間。
可優(yōu)化部分
* 服務(wù)器網(wǎng)絡(luò)帶寬 * 單個文件大小其他
大佬們總說要寫文章,第一次寫文章,就搬運了一下都感覺好難哦。
有不對的地方歡迎大佬們指出。
參考Understanding Resource Timing
Chrome Cache Lock
Chromium Issues 476749
chrome-stalled-problem-resolving-process
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/107890.html
摘要:可優(yōu)化部分請求已被暫停,以等待將要釋放的不可用套接字。合并小文件減少請求。請求被暫停,上,瀏覽器僅允許每個源擁有六個連接。主要是對服務(wù)器的保護。中的所有原因加上代理協(xié)商所用的任何時間。等待初始響應(yīng)所用的時間,也稱為至第一字節(jié)的時間。 前言 如果我們發(fā)現(xiàn)自己頁面加載慢,通常會打開DevTools的Network欄找到具體的慢的請求,那他到底慢在哪呢? Timing包含的內(nèi)容 showIm...
摘要:性能時間線以一個統(tǒng)一的接口獲取由和所收集的性能數(shù)據(jù)。瀏覽器支持下表列舉了當前主流瀏覽器對性能的支持,其中標注星號的內(nèi)容并非來自于性能工作小組。 頁面的性能問題一直是產(chǎn)品開發(fā)過程中的重要一環(huán),很多公司也一直在使用各種方式監(jiān)控產(chǎn)品的頁面性能。從控制臺工具、Fiddler抓包工具,到使用DOMContentLoaded和document.onreadystatechange這種侵入式j(luò)ava...
摘要:獲取一組當前頁面已經(jīng)加載的資源對象。為時,表示資源的路徑。超出時,清空所有為的資源數(shù)據(jù)。為的資源數(shù)量超出設(shè)置值的時候會觸發(fā)該事件。自定義計時接口創(chuàng)建一個保存在資源緩存數(shù)據(jù)中,可通過等相關(guān)接口獲取。返回一個包含對象所有屬性的對象。 簡介 performance是html5的新特性之一,通過它,頁面的開發(fā)者們可以非常精確的統(tǒng)計到自己頁面的表現(xiàn)情況,從而有針對性的進行優(yōu)化,提升用戶體驗。 下...
摘要:今天我們來聊聊前端的監(jiān)控我們?yōu)槭裁葱枰岸吮O(jiān)控為了獲取用戶行為以及跟蹤產(chǎn)品在用戶端的使用情況,并以監(jiān)控數(shù)據(jù)為基礎(chǔ),指明產(chǎn)品優(yōu)化方向前端監(jiān)控分為三類性能項目數(shù)據(jù)監(jiān)控異常監(jiān)控性能監(jiān)控衡量前端的性能的指標是時間那么如何監(jiān)測時間呢,瀏覽器給我們提 今天我們來聊聊前端的監(jiān)控 我們?yōu)槭裁葱枰岸吮O(jiān)控 ? 為了獲取用戶行為以及跟蹤產(chǎn)品在用戶端的使用情況,并以監(jiān)控數(shù)據(jù)為基礎(chǔ),指明產(chǎn)品優(yōu)化方向 前端監(jiān)控...
閱讀 2882·2021-10-08 10:12
閱讀 3978·2021-09-22 15:45
閱讀 2568·2019-08-30 15:52
閱讀 2638·2019-08-29 18:44
閱讀 2657·2019-08-29 12:37
閱讀 1168·2019-08-26 13:36
閱讀 2572·2019-08-26 13:34
閱讀 1487·2019-08-26 12:20