亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

Cache-Control、ETag和過(guò)時(shí)的Expires

X_AirDu / 3546人閱讀

摘要:究其原因是因?yàn)橐彩窃O(shè)置時(shí)間來(lái)做期限,但是它設(shè)置的是到期時(shí)間,并且要是格式的時(shí)間,最致命的是它的到期時(shí)間是依據(jù)系統(tǒng)時(shí)間來(lái)看的,如果系統(tǒng)時(shí)間錯(cuò)誤超過(guò)了的到期時(shí)間,那么就會(huì)請(qǐng)求不到資源。

前記

HTTP緩存是web性能優(yōu)化的一個(gè)常識(shí),目的是當(dāng)你第二次請(qǐng)求時(shí),將JS、CSS、的請(qǐng)求速度加快,但是html卻不能設(shè)置Cache-Control,這是為什么,可以想一想

Cache-Control 如何用
response.setHeader("Cache-Control","max-age=315360000")

響應(yīng)設(shè)置響應(yīng)頭,max-age是設(shè)置緩存停留時(shí)間,單位為秒,從你接收到那個(gè)響應(yīng)開(kāi)始計(jì)時(shí),一般是設(shè)置10年或者1年

功能

設(shè)置Cache-Control可以在一段時(shí)間內(nèi)不訪問(wèn)服務(wù)器,直接用本地內(nèi)存或者硬盤中獲取響應(yīng),因此極大的加快了訪問(wèn)速度,關(guān)鍵在于不會(huì)發(fā)送HTTP請(qǐng)求

更新資源

當(dāng)緩存那么久,那如果緩存資源更新了怎么辦

可以添加查詢參數(shù),如?v=...這樣就可以更新緩存了

還有就是可以在入口html文件處把url變一下,和以前的都不一樣,也可以更新緩存

還有就是在文件名前面生成一串字符,變更文件名,也可以更新緩存

ETag

說(shuō)到ETag就不得不提md5摘要算法,這個(gè)算法可以計(jì)算一個(gè)文件,然后生成一串字符,相同文件內(nèi)容生成的字符串是一樣的,如果內(nèi)容不相同生成的字符串就會(huì)不一樣,并且內(nèi)容差別越小,字符串差別越大

如何用
response.setHeader("ETag", fileMd5)

fileMd5就是md5生成的字符串

功能

設(shè)置了ETag后,以后每次訪問(wèn)服務(wù)器都要設(shè)置頭If-None-Match來(lái)帶上那串字符串,資源未變更,服務(wù)器就會(huì)返回304,和Cache-Control不同就是,ETag還是會(huì)請(qǐng)求,不過(guò)資源不變的話,響應(yīng)體是空的。

更新資源

這就非常簡(jiǎn)單了,當(dāng)服務(wù)器更換了一個(gè)資源,那生成的字符串就會(huì)不一樣,當(dāng)If-None-Match帶著原來(lái)的字符串來(lái)比較時(shí),發(fā)現(xiàn)字符串不一樣,那就會(huì)下載新的資源

過(guò)時(shí)的Expires

Expires也是一個(gè)響應(yīng)頭,功能和Cache-Control差不多,但是現(xiàn)在逐漸被淘汰了,并且如果在Cache-Control響應(yīng)頭設(shè)置了 "max-age" 或者 "s-max-age" 指令,那么Expires頭會(huì)被忽略。
究其原因是因?yàn)?b>Expires也是設(shè)置時(shí)間來(lái)做期限,但是它設(shè)置的是到期時(shí)間,并且要是GMT格式的時(shí)間,最致命的是它的到期時(shí)間是依據(jù)系統(tǒng)時(shí)間來(lái)看的,如果系統(tǒng)時(shí)間錯(cuò)誤超過(guò)了Expires的到期時(shí)間,那么就會(huì)請(qǐng)求不到資源。

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/97106.html

相關(guān)文章

  • 談?wù)凥TTP緩存

    摘要:但遺憾的是,該響應(yīng)已經(jīng)過(guò)期。大多數(shù)情況下,不是必需的,因?yàn)槊鞔_的緩存信息例如已表示響應(yīng)是可以緩存的。表示響應(yīng)只為單個(gè)用戶緩存,因此不允許中間緩存對(duì)其進(jìn)行緩存。這樣,即使文件緩存了,也可以得到更新。 在上一篇文章中,我們講到造成網(wǎng)絡(luò)性能下降的主要原因是延遲,而非帶寬。那么為了更好地讓我們的網(wǎng)站能快速響應(yīng)用戶的請(qǐng)求,我們就必須對(duì)一些常用資源進(jìn)行緩存,以免每次用戶訪問(wèn)都請(qǐng)求一遍,這也是網(wǎng)站性...

    xiaodao 評(píng)論0 收藏0
  • 頁(yè)面性能優(yōu)化辦法有哪些?

    摘要:那我們?nèi)绾蝺?yōu)化頁(yè)面性能,提高頁(yè)面加載速度呢這是本文主要要探討的問(wèn)題,然而性能優(yōu)化是個(gè)綜合性問(wèn)題,沒(méi)有標(biāo)準(zhǔn)答案,想要面面俱到羅列出來(lái),并非易事。三利用瀏覽器緩存對(duì)于應(yīng)用來(lái)說(shuō),緩存是提升頁(yè)面性能同時(shí)減少服務(wù)器壓力的利器。 引子 互聯(lián)網(wǎng)有一項(xiàng)著名的8秒原則。用戶在訪問(wèn)Web網(wǎng)頁(yè)時(shí),如果時(shí)間超過(guò)8秒就會(huì)感到不耐煩,如果加載需要太長(zhǎng)時(shí)間,他們就會(huì)放棄訪問(wèn)。大部分用戶希望網(wǎng)頁(yè)能在2秒之內(nèi)就完成加載...

    MageekChiu 評(píng)論0 收藏0
  • 頁(yè)面性能優(yōu)化辦法有哪些?

    摘要:那我們?nèi)绾蝺?yōu)化頁(yè)面性能,提高頁(yè)面加載速度呢這是本文主要要探討的問(wèn)題,然而性能優(yōu)化是個(gè)綜合性問(wèn)題,沒(méi)有標(biāo)準(zhǔn)答案,想要面面俱到羅列出來(lái),并非易事。三利用瀏覽器緩存對(duì)于應(yīng)用來(lái)說(shuō),緩存是提升頁(yè)面性能同時(shí)減少服務(wù)器壓力的利器。 引子 互聯(lián)網(wǎng)有一項(xiàng)著名的8秒原則。用戶在訪問(wèn)Web網(wǎng)頁(yè)時(shí),如果時(shí)間超過(guò)8秒就會(huì)感到不耐煩,如果加載需要太長(zhǎng)時(shí)間,他們就會(huì)放棄訪問(wèn)。大部分用戶希望網(wǎng)頁(yè)能在2秒之內(nèi)就完成加載...

    raoyi 評(píng)論0 收藏0
  • 頁(yè)面性能優(yōu)化辦法有哪些?

    摘要:那我們?nèi)绾蝺?yōu)化頁(yè)面性能,提高頁(yè)面加載速度呢這是本文主要要探討的問(wèn)題,然而性能優(yōu)化是個(gè)綜合性問(wèn)題,沒(méi)有標(biāo)準(zhǔn)答案,想要面面俱到羅列出來(lái),并非易事。三利用瀏覽器緩存對(duì)于應(yīng)用來(lái)說(shuō),緩存是提升頁(yè)面性能同時(shí)減少服務(wù)器壓力的利器。 引子 互聯(lián)網(wǎng)有一項(xiàng)著名的8秒原則。用戶在訪問(wèn)Web網(wǎng)頁(yè)時(shí),如果時(shí)間超過(guò)8秒就會(huì)感到不耐煩,如果加載需要太長(zhǎng)時(shí)間,他們就會(huì)放棄訪問(wèn)。大部分用戶希望網(wǎng)頁(yè)能在2秒之內(nèi)就完成加載...

    rockswang 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<