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