成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Web緩存優(yōu)化的進階認知

miguel.jiang / 1802人閱讀

摘要:可緩存優(yōu)化并不是所有資源都是可以被緩存的。影響緩存的因素主要有請求方法,請求參數(shù)設(shè)置以及狀態(tài)碼??删彺娴挠邢麡O緩存的狀態(tài)碼不可緩存的狀態(tài)碼緩存中的生命周期是指對象相鄰兩次修改的時間。此時該對象是不可緩存對象添加字段可以增長對象生命周期。

一般情況下,網(wǎng)站在第二次加載時,加載時間會大大被提升,這是因為網(wǎng)頁中的一些資源被客戶端緩存下來了,網(wǎng)頁在二次加載的時候就不需要重新從遠處服務(wù)器請求資源,而是直接應(yīng)用客戶端緩存好的數(shù)據(jù)。

扯遠了···


Web緩存優(yōu)化是一種提高現(xiàn)有系統(tǒng)利用率的方式,是處于用戶和Web服務(wù)器之間的信息緩沖機制,基本思想是:利用了Web頁面訪問的時間的局部性,把用戶經(jīng)常訪問的信息放到用戶的附近或本地,以便用戶后續(xù)訪問能從客戶端和本地服務(wù)器獲取信息,不必訪問遠程服務(wù)器。Web緩存通過信息的本地化來加快網(wǎng)頁瀏覽速度,在一定程度上節(jié)省網(wǎng)絡(luò)帶寬,減少服務(wù)器負荷。

由緩存實現(xiàn)的位置不同可以將Web緩存分為三類,即客戶端緩存代理緩存,服務(wù)器端緩存??蛻舳司彺嬷饕诳蛻魴C瀏覽器端實現(xiàn),將用戶請求的數(shù)據(jù)緩存在本地,這種方法響應(yīng)時間最短,但是不能被局域網(wǎng)所共享;代理緩存指代理服務(wù)器緩存,代理服務(wù)器位于客戶端與服務(wù)器之間,代理服務(wù)器在接到用戶請求時,將緩存信息返回給用戶,如果請求信息不在緩存中,則請求遠程服務(wù)器,代理緩存的優(yōu)點是可以被局域網(wǎng)共享;服務(wù)器緩存指將服務(wù)器端動態(tài)數(shù)據(jù)緩存給客戶端使用。

可緩存優(yōu)化

并不是所有Web資源都是可以被緩存的。那么從客戶端優(yōu)化角度,提高Web資源的可緩存話就會提高客戶端的性能。

影響Web緩存的因素主要有HTTP請求方法,請求參數(shù)設(shè)置以及HTTP狀態(tài)碼。HTTP/1.1規(guī)定Web請求方法有GET、HEAD、POST、DELETE、OPTION、CONNECT和TRACE八種,只有GET與POST請求是可緩存的。

根據(jù)HTTP狀態(tài)碼可將Web對象緩存性分為三種??删彺娴挠校?00、203、300、301、401;消極緩存的HTTP狀態(tài)碼:204、305、400、403、404、405、414、500、502、504;不可緩存的HTTP狀態(tài)碼:100、101、201、202、205、206、302、303、304、307、401、402、406、407、408、409、411、412、413、415、501、505.

Web緩存中的生命周期是指Web對象相鄰兩次修改的時間。HTTP中對Web生命周期進行描述的參數(shù)有Expireslast modified等,大部分時候靠last modified參數(shù)來判斷Web對象的生命周期。當某一Web資源進行修改后,Web緩存服務(wù)器中并沒有進行相應(yīng)的修改,這時候用戶請求該資源并訪問Web對象是否包含Expires字段,如果包含則進行校驗,符合則返回當前資源,如果不包含該字段,Web緩存服務(wù)器會向遠程服務(wù)器發(fā)起GET-If-modified請求,并發(fā)送當前last modified字段,如果響應(yīng)不包含last modified字段,則使用當前last modified值。

不可緩存Web對象的HTTP參數(shù)設(shè)置
不可緩存HTTP頭部信息 不可緩存HTTP頭部信息參數(shù)含義
缺少 last modified 參數(shù)的對應(yīng)信息 last modified time 指出服務(wù)器認出Web對象被修改的最后日期和時間,即若對象在 last modified time 值域以后被修改過,則該對象是不可緩存的。若服務(wù)器的返回值是304 not modified,則對象可被緩存
設(shè)置 set cookie 當緩存控制信息 cache-control 被設(shè)置為“不可緩存”或是“私有”時,該對象是不可緩存的
設(shè)置 Pragma:no-cache 當頭部信息中有此設(shè)置時,服務(wù)器禁止請求從緩存響應(yīng)。此時該對象是不可緩存的
設(shè)置 authorization 當返回的頭部信息中包含個人信息時,緩存對象的效率很低。此時該對象是不可緩存對象

添加Expires字段可以增長Web對象生命周期。Expires字段告訴Web客戶端,在指定的時間之前都可以使用現(xiàn)有的Web對象,不需要重新下載。假如在HTTP響應(yīng)中出現(xiàn)這樣的Expires:

expires:Sat, 03 Sep 2016 14:33:39 GMT

這個字段告訴瀏覽器,該資源的生命周期可以持續(xù)到2016年9月3日。如果Web網(wǎng)頁中某一段資源返回了這個頭,那么瀏覽器在以后加載這個頁面時,會使用緩存中的本地資源,用戶在二次訪問的時候就節(jié)省了下載時間。

Nginx給靜態(tài)資源添加Expires頭

打開Nginx的站點配置文件,這里考慮給圖片資源添加30天的有效期,給css和js添加7天有效期,也給字體資源添加30天的有效期。

server{}里添加下面代碼:

location ~ .*.(gif|jpg|jpeg|png|bmp|swf|flv|ico)$ {
    expires 30d;
    access_log off;
}

location ~ .*.(js|css)?$ {
    expires 7d;
    access_log off;
}

location ~ .*.(eot|ttf|otf|woff|svg)$ {
    expires 30d;
    access_log off;
}
其他

實踐的東西不多,另外再次對網(wǎng)站進行一次提速,過幾天就開始對服務(wù)器進行升級,希望會更大的訪問速度的提升。這篇文章寫得好累啊!

文章首發(fā)于:https://www.linpx.com

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/39321.html

相關(guān)文章

  • Web緩存優(yōu)化進階認知

    摘要:可緩存優(yōu)化并不是所有資源都是可以被緩存的。影響緩存的因素主要有請求方法,請求參數(shù)設(shè)置以及狀態(tài)碼??删彺娴挠邢麡O緩存的狀態(tài)碼不可緩存的狀態(tài)碼緩存中的生命周期是指對象相鄰兩次修改的時間。此時該對象是不可緩存對象添加字段可以增長對象生命周期。 一般情況下,網(wǎng)站在第二次加載時,加載時間會大大被提升,這是因為網(wǎng)頁中的一些資源被客戶端緩存下來了,網(wǎng)頁在二次加載的時候就不需要重新從遠處服務(wù)器請求資源...

    nemo 評論0 收藏0
  • 進階Java架構(gòu)師必看15本書

    摘要:阿里巴巴的共享服務(wù)理念以及企業(yè)級互聯(lián)網(wǎng)架構(gòu)建設(shè)的思路,給這些企業(yè)帶來了不少新的思路,這也是我最終決定寫這本書的最主要原因。盡在雙阿里巴巴技術(shù)演進與超越是迄今唯一由阿里巴巴集團官方出品全面闡述雙八年以來在技術(shù)和商業(yè)上演進和創(chuàng)新歷程的書籍。 showImg(https://segmentfault.com/img/remote/1460000015386860); 1、大型網(wǎng)站技術(shù)架構(gòu):核...

    Julylovin 評論0 收藏0
  • 實踐解析:大眾點評賬號業(yè)務(wù)高可用進階之路

    摘要:需要監(jiān)控的維度有登錄總數(shù)成功數(shù)失敗分類用戶地區(qū)版本號瀏覽器類型登錄來源服務(wù)所在機房等等。 引言在任何一家互聯(lián)網(wǎng)公司,不管其主營業(yè)務(wù)是什么,都會有一套自己的賬號體系。賬號既是公司所有業(yè)務(wù)發(fā)展留下的最寶貴資產(chǎn),它可以用來衡量業(yè)務(wù)指標,例如日活、月活、留存等,同時也給不同業(yè)務(wù)線提供了大量潛在用戶,業(yè)務(wù)可以基于賬號來做用戶畫像,制定各自的發(fā)展路徑。因此,賬號服務(wù)的重要性不言而喻,同時美團業(yè)務(wù)飛速發(fā)展...

    Guakin_Huang 評論0 收藏0
  • PHP 進階之路 - 億級 pv 網(wǎng)站架構(gòu)實戰(zhàn)之性能壓榨

    摘要:業(yè)務(wù)和架構(gòu)不分家,架構(gòu)是建立在對業(yè)務(wù)的理解之上的。主鍵最好保持順序遞增,隨機主鍵會導(dǎo)致聚簇索引樹頻繁分裂,隨機增多,數(shù)據(jù)離散,性能下降。沒有索引的更新,可能會導(dǎo)致全表數(shù)據(jù)都被鎖住。 本博客并非全部原創(chuàng),其實是一個知識的歸納和匯總,里面我引用了很多網(wǎng)上、書上的內(nèi)容。也給出了相關(guān)的鏈接。 本文涉及的知識點比較多,大家可以根據(jù)關(guān)鍵字去搜索相關(guān)的內(nèi)容和購買相應(yīng)的書籍進行系統(tǒng)的學習。不對的地方...

    SnaiLiu 評論0 收藏0
  • 前端優(yōu)化 - 收藏集 - 掘金

    摘要:雖然有著各種各樣的不同,但是相同的是,他們前端優(yōu)化不完全指南前端掘金篇幅可能有點長,我想先聊一聊閱讀的方式,我希望你閱讀的時候,能夠把我當作你的競爭對手,你的夢想是超越我。 如何提升頁面渲染效率 - 前端 - 掘金Web頁面的性能 我們每天都會瀏覽很多的Web頁面,使用很多基于Web的應(yīng)用。這些站點看起來既不一樣,用途也都各有不同,有在線視頻,Social Media,新聞,郵件客戶端...

    VincentFF 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<