觸屏版
全國(guó)服務(wù)熱線:0571-87205688
譯者前言:
在8年之前,Yahoo團(tuán)隊(duì)曾經(jīng)對(duì)網(wǎng)頁(yè)中的緩存做了比較詳盡的研究,但是隨著互聯(lián)網(wǎng)的高速發(fā)展,研究數(shù)據(jù)發(fā)生了一些變化.這篇文章主要是Facebook的web團(tuán)隊(duì)對(duì)現(xiàn)在緩存情況一些數(shù)據(jù)收集和研究.包括PC和移動(dòng)端資源被緩存的時(shí)間以及資源在存在的時(shí)間.網(wǎng)頁(yè)緩存是性能優(yōu)化很重要的因素,值得一讀.
正文:
網(wǎng)頁(yè)加載速度是每個(gè)網(wǎng)站都應(yīng)該重視的因素.但是往往被大家忽略.緩存是一個(gè)提升網(wǎng)站訪問(wèn)速度非常重要的因素(因?yàn)橛脩?hù)在下次訪問(wèn)的時(shí)候不需要重新計(jì)算或者下載已經(jīng)緩存的資源)我們團(tuán)隊(duì)(facebook web團(tuán)隊(duì))最近針對(duì)目前沒(méi)有緩存的現(xiàn)狀進(jìn)行了一番討論,主要問(wèn)題是:在facebook,.我們每天都會(huì)發(fā)布兩個(gè)版本,怎么樣才能令緩存更有效率?怎么樣的緩存策略才適合我們?
在找解決方案的時(shí)候, 我們發(fā)現(xiàn)雅虎性能優(yōu)化研究博客上已經(jīng)有了一篇關(guān)于性能研究的文章.
但是令我們非常吃驚的是:20%的頁(yè)面訪問(wèn)是在空緩存的情況下進(jìn)行的.但是這個(gè)研究結(jié)果距離現(xiàn)在有8年了,那個(gè)時(shí)代剛發(fā)布IE7,jquery也剛發(fā)布第一個(gè)版本,所以我們決定重新研究一下,看現(xiàn)在是不是有所改善.
重新研究:
在之前的研究當(dāng)中,Yahoo在服務(wù)器創(chuàng)建了HTTP頭設(shè)置了圖片的過(guò)期時(shí)間和上次修改時(shí)間,如果圖片沒(méi)有發(fā)生改變,就用GET請(qǐng)求發(fā)送給服務(wù)器一個(gè)最后修改時(shí)間的信息,如果圖片沒(méi)有修改,就返回304(沒(méi)有修改)來(lái)替換200(請(qǐng)求成功).因?yàn)榉?wù)器可以記錄瀏覽器請(qǐng)求的請(qǐng)求狀態(tài),所以Yahoo用服務(wù)器日志來(lái)統(tǒng)計(jì)緩存的用戶(hù)數(shù).
像那樣的研究方法一樣,我們創(chuàng)建了一個(gè)既能發(fā)送圖片請(qǐng)求也能在數(shù)據(jù)庫(kù)當(dāng)中記錄日志的PHP終點(diǎn).這張圖片用http頭信息來(lái)控制瀏覽器的緩存和其他通過(guò)代理產(chǎn)生的緩存.之后在用戶(hù)請(qǐng)求圖片的時(shí)候記錄這些信息.
評(píng)論(0人參與,0條評(píng)論)
發(fā)布評(píng)論
最新評(píng)論