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

資訊專欄INFORMATION COLUMN

前端性能優(yōu)化--緩存

Eastboat / 1210人閱讀

摘要:緩存控制設(shè)置緩存存儲的最大周期,超過這個時間緩存被認為過期單位秒。

Cache-Control

Cache-Control:緩存控制

max-age

s-maxage

private

public

no-cache

no-store

max-age

設(shè)置緩存存儲的最大周期,超過這個時間緩存被認為過期(單位秒)。與Expires相反,時間是相對于請求的時間,

優(yōu)先級高于Expires

s-maxage

覆蓋max-age 或者 Expires 頭,但是僅適用于共享緩存(比如各個代理),并且私有緩存中它被忽略

只能用于public,如CDN

優(yōu)先級高于max-age

]

private

表明響應(yīng)只能被單個用戶緩存,不能作為共享緩存(即代理服務(wù)器不能緩存它),可以緩存響應(yīng)內(nèi)容

自己的服務(wù)器

public

表明響應(yīng)可以被任何對象(包括:發(fā)送請求的客戶端,代理服務(wù)器,等等)緩存。

CDN,可以被多個用戶請求

no-cache

在釋放緩存副本之前,強制高速緩存將請求提交給原始服務(wù)器進行驗證

這個文件不管怎么樣,都會向服務(wù)器發(fā)起請求,去服務(wù)器哪邊詢問,這個文件有沒有在緩存策略里

no-store

緩存不應(yīng)存儲有關(guān)客戶端請求或服務(wù)器響應(yīng)的任何內(nèi)容。

不會使用任何緩存策略

Expires

緩存過期時間,用來指定資源的到期時間,是服務(wù)器端的具體的時間點

告訴瀏覽器在過期時間前瀏覽器可以直接從瀏覽器緩存取數(shù)據(jù),而不用再次請求

max-age的優(yōu)化級高于expires,當(dāng)有max-age的時候,會無視expires

當(dāng)在有效時間內(nèi),如果服務(wù)器端的文件已經(jīng)發(fā)生改變,但是瀏覽器端無法感知

Last-Modified/If-Modified-Since

Last-Modified 是一個響應(yīng)首部,其中包含源頭服務(wù)器認定的資源做出修改的日期及時間。 它通常被用作一個驗證器來判斷接收到的或者存儲的資源是否彼此一致。由于精確度比 ETag 要低,所以這是一個備用機制。包含有 If-Modified-Since 或 If-Unmodified-Since 首部的條件請求會使用這個字段。

基于客戶端和服務(wù)端協(xié)商的緩存機制

Last-Modified ----response header

If-Modified-Since----request header

需要與cache-control共同使用

max-age的優(yōu)先級高于Last-Modified

缺點:

某些服務(wù)端不能獲取精確的修改時間

文件修改時間改了,但文件內(nèi)容卻沒有變

效果

勾上disable cache

第一次請求,狀態(tài)碼200,response header里有返回Last-Modified

不勾disable cache

刷新,狀態(tài)碼304,request header里有If-Modified-Since

因為客戶端發(fā)送過來的的Modified與服務(wù)端的Modified一樣,所以使用緩存

Etag/If-None-Match

ETagHTTP響應(yīng)頭是資源的特定版本的標識符。這可以讓緩存更高效,并節(jié)省帶寬,因為如果內(nèi)容沒有改變,Web服務(wù)器不需要發(fā)送完整的響應(yīng)。而如果內(nèi)容發(fā)生了變化,使用ETag有助于防止資源的同時更新相互覆蓋(“空中碰撞”)

文件內(nèi)容的hash值

etag--response header

if-none-match -- request header

要與cache-control共同使用

效果

清掉緩存

第一次請求,服務(wù)器返回etag

可以使用緩存

再次請求,客戶端向服務(wù)器發(fā)送if-none-match

因為2個值一樣,所以返回304,讓瀏覽器讀取本地的資源

分級緩存策略

流程圖

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

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

相關(guān)文章

  • 前端性能優(yōu)化

    摘要:端優(yōu)談?wù)勱P(guān)于前端的緩存的問題我們都知道對頁面進行緩存能夠有利于減少請求發(fā)送,從而達到對頁面的優(yōu)化。而作為一名有追求的前端,勢必要力所能及地優(yōu)化我們前端頁面的性能。這種方式主要解決了淺談前端中的過早優(yōu)化問題過早優(yōu)化是萬惡之源。 優(yōu)化向:單頁應(yīng)用多路由預(yù)渲染指南 Ajax 技術(shù)的出現(xiàn),讓我們的 Web 應(yīng)用能夠在不刷新的狀態(tài)下顯示不同頁面的內(nèi)容,這就是單頁應(yīng)用。在一個單頁應(yīng)用中,往往只有一...

    Dean 評論0 收藏0
  • 實踐中的電商前端優(yōu)化

    摘要:前端優(yōu)化已經(jīng)是一個被寫爛的題材了。前端模板方案有很多。重繪是瀏覽器性能優(yōu)化的一個重點,特別是針對的優(yōu)化。如果你對前端性能優(yōu)化有自己的想法,歡迎騷擾我。 前端優(yōu)化已經(jīng)是一個被寫爛的題材了。 雖千萬人吾往矣,這里我僅分享我的一些實踐經(jīng)驗。 歡迎一起交流 歡迎關(guān)注我的個人公眾號,不定期更新自己的工作心得。 showImg(https://segmentfault.com/img/remote...

    Michael_Ding 評論0 收藏0
  • 實踐中的電商前端優(yōu)化

    摘要:前端優(yōu)化已經(jīng)是一個被寫爛的題材了。前端模板方案有很多。重繪是瀏覽器性能優(yōu)化的一個重點,特別是針對的優(yōu)化。如果你對前端性能優(yōu)化有自己的想法,歡迎騷擾我。 前端優(yōu)化已經(jīng)是一個被寫爛的題材了。 雖千萬人吾往矣,這里我僅分享我的一些實踐經(jīng)驗。 歡迎一起交流 歡迎關(guān)注我的個人公眾號,不定期更新自己的工作心得。 showImg(https://segmentfault.com/img/remote...

    Dongjie_Liu 評論0 收藏0
  • 實踐中的電商前端優(yōu)化

    摘要:前端優(yōu)化已經(jīng)是一個被寫爛的題材了。前端模板方案有很多。重繪是瀏覽器性能優(yōu)化的一個重點,特別是針對的優(yōu)化。如果你對前端性能優(yōu)化有自己的想法,歡迎騷擾我。 前端優(yōu)化已經(jīng)是一個被寫爛的題材了。 雖千萬人吾往矣,這里我僅分享我的一些實踐經(jīng)驗。 歡迎一起交流 歡迎關(guān)注我的個人公眾號,不定期更新自己的工作心得。 showImg(https://segmentfault.com/img/remote...

    lakeside 評論0 收藏0
  • 淺談網(wǎng)站性能前端性能優(yōu)化

    摘要:淺談網(wǎng)站性能之前端性能優(yōu)化性能優(yōu)化的目的無非是減少用戶流量消耗,提升用戶首屏體驗,提升用戶訪問速度,讓用戶專注內(nèi)容本身。前端性能優(yōu)化減少請求數(shù)量基本原理在瀏覽器與服務(wù)器進行通信時,主要是通過進行通信。 最近項目慢慢走上正軌,需求趨于平穩(wěn),這才想起需要對整站進行性能優(yōu)化。經(jīng)過一段時間的學(xué)習(xí),結(jié)合現(xiàn)在項目的實際性能情況,發(fā)現(xiàn)確實有許多地方可以進行優(yōu)化。于是就開始了我的前端性能優(yōu)化之旅。以下...

    Winer 評論0 收藏0

發(fā)表評論

0條評論

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