色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

nginx中強(qiáng)緩存和協(xié)商緩存介紹

馬哥Linux運(yùn)維 ? 來源:博客園dashery ? 2025-04-01 16:01 ? 次閱讀

一、強(qiáng)緩存(Strong Cache)

1.定義

? 強(qiáng)緩存直接告訴瀏覽器:在緩存過期前,無需與服務(wù)器通信,直接使用本地緩存。
? 由服務(wù)器通過響應(yīng)頭Cache-ControlExpires控制。

2.響應(yīng)頭

?Cache-Control: max-age=3600
表示資源在3600 秒(1小時(shí))內(nèi)有效(優(yōu)先級高于Expires)。
?Expires: Thu, 31 Dec 2030 2359 GMT
指定一個(gè)絕對過期時(shí)間(依賴于客戶端本地時(shí)間,可能存在誤差)。

3.Nginx 配置示例

location/static/ {
 # 設(shè)置強(qiáng)緩存:1年內(nèi)有效
 add_headerCache-Control"public, max-age=31536000";
 expires1y;
}

4.行為

? 瀏覽器首次請求資源時(shí),服務(wù)器返回資源并附帶緩存頭。
? 后續(xù)請求時(shí),瀏覽器直接讀取本地緩存(狀態(tài)碼200 (from disk cache)),不發(fā)送請求到服務(wù)器

5.適用場景

? 靜態(tài)資源(如 CSS、JS、圖片、字體文件)等長期不變的資源。

二、協(xié)商緩存(協(xié)商緩存,Weak Cache)

1.定義

? 協(xié)商緩存要求瀏覽器每次向服務(wù)器驗(yàn)證緩存是否過期,若未過期則返回304 Not Modified,繼續(xù)使用本地緩存。
? 由服務(wù)器通過響應(yīng)頭Last-ModifiedETag控制。

2.響應(yīng)頭

?Last-Modified: Wed, 21 Oct 2023 0700 GMT
表示資源最后修改時(shí)間(精度為秒,可能因時(shí)間同步問題失效)。
?ETag: "5d8c72a5-264"
資源的唯一標(biāo)識符(哈希值或版本號),精度更高。

3.Nginx 配置示例

location/dynamic/ {
 # 啟用協(xié)商緩存(默認(rèn)已支持,無需顯式配置)
 add_headerLast-Modified"";
 etagon;
}

4.行為

瀏覽器首次請求資源時(shí),服務(wù)器返回資源并附帶Last-Modified或ETag。

后續(xù)請求時(shí),瀏覽器通過以下請求頭驗(yàn)證緩存:
?If-Modified-Since: [Last-Modified值]
向服務(wù)器詢問資源是否在指定時(shí)間后修改過。
?If-None-Match: [ETag值]
向服務(wù)器驗(yàn)證資源的ETag是否變化。

若資源未修改,服務(wù)器返回304 Not Modified,瀏覽器繼續(xù)使用緩存;若已修改,返回新資源(狀態(tài)碼200)。

5.適用場景

? 頻繁更新的資源(如 HTML 頁面、動(dòng)態(tài) API 響應(yīng))。

三、關(guān)鍵區(qū)別

特性 強(qiáng)緩存 協(xié)商緩存
通信成本 無網(wǎng)絡(luò)請求(直接讀緩存) 需發(fā)送請求驗(yàn)證緩存
響應(yīng)狀態(tài)碼 200 (from disk cache) 304 Not Modified
優(yōu)先級 優(yōu)先于協(xié)商緩存 強(qiáng)緩存過期后觸發(fā)
適用資源 長期不變的靜態(tài)資源 頻繁更新的動(dòng)態(tài)資源

四、Nginx 最佳實(shí)踐

混合使用兩種緩存

location/ {
 # 強(qiáng)緩存 1 小時(shí),過期后啟用協(xié)商緩存
 add_headerCache-Control"public, max-age=3600";
 etagon;
}

按文件類型區(qū)分策略

# 圖片、字體等強(qiáng)緩存
location~* .(jpg|png|gif|woff2)${
 expires1y;
 add_headerCache-Control"public, max-age=31536000";
}

# HTML 文件禁用強(qiáng)緩存(總是協(xié)商)
location~* .html${
 add_headerCache-Control"no-cache, must-revalidate";
}

解決緩存更新問題
? 強(qiáng)緩存資源建議通過文件名哈希控制版本(如main.abcd1234.js)。
? 協(xié)商緩存可通過修改ETag或Last-Modified觸發(fā)更新。

五、調(diào)試工具

瀏覽器開發(fā)者工具(Network 標(biāo)簽):
? 查看200 (from disk cache)(強(qiáng)緩存)或304 Not Modified(協(xié)商緩存)。
? 檢查請求頭中的Cache-Control、If-Modified-Since、If-None-Match。

命令行工具:

curl -I http://example.com/resource.js

通過合理配置強(qiáng)緩存和協(xié)商緩存,可以顯著提升網(wǎng)站性能,減少服務(wù)器負(fù)載。

鏈接:https://www.cnblogs.com/ydswin/p/18757690

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 緩存
    +關(guān)注

    關(guān)注

    1

    文章

    244

    瀏覽量

    26973
  • 瀏覽器
    +關(guān)注

    關(guān)注

    1

    文章

    1040

    瀏覽量

    35957
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    161

    瀏覽量

    12434

原文標(biāo)題:什么是nginx的強(qiáng)緩存和協(xié)商緩存

文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運(yùn)維】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 0人收藏

    評論

    相關(guān)推薦

    什么是追蹤緩存/轉(zhuǎn)接卡?

    什么是追蹤緩存/轉(zhuǎn)接卡?  追蹤緩存  在奔騰IV一級緩存,一般一級緩存的指令
    發(fā)表于 02-04 10:40 ?492次閱讀

    內(nèi)容中心網(wǎng)絡(luò)基于緩存索引的緩存路由機(jī)制

    內(nèi)容中心網(wǎng)絡(luò)基于緩存索引的緩存路由機(jī)制_王好齊
    發(fā)表于 01-07 20:49 ?0次下載

    詳解瀏覽器的緩存機(jī)制

    緩存一直是前端優(yōu)化的主戰(zhàn)場,利用好緩存就成功了一半。本篇從HTTP請求和響應(yīng)的頭域入手,讓你對瀏覽器緩存有個(gè)整體的概念。最終你會(huì)發(fā)現(xiàn)強(qiáng)緩存
    發(fā)表于 09-30 11:27 ?0次下載
    詳解瀏覽器的<b class='flag-5'>緩存</b>機(jī)制

    Mybatis緩存之一級緩存

    本文主要講mybatis的一級緩存,一級緩存是SqlSession級別的緩存。mybatis提供查詢緩存,用于減輕數(shù)據(jù)壓力,提高數(shù)據(jù)庫性能。mybaits提供一級
    發(fā)表于 11-27 20:44 ?1288次閱讀
    Mybatis<b class='flag-5'>緩存</b>之一級<b class='flag-5'>緩存</b>

    渲染的幀緩存和深度緩存

    渲染涉及大量的緩存,這里緩存只是一個(gè)簡單的存有像素?cái)?shù)據(jù)的矩形內(nèi)存塊,最重要緩存是幀緩存和深度緩存
    的頭像 發(fā)表于 05-14 11:44 ?6831次閱讀
    渲染<b class='flag-5'>中</b>的幀<b class='flag-5'>緩存</b>和深度<b class='flag-5'>緩存</b>

    一文知道Nginx服務(wù)器的緩存原理和機(jī)制

    Nginx服務(wù)器的緩存原理,是在學(xué)習(xí)過程中比較重要的一個(gè)知識點(diǎn),學(xué)習(xí)通透之后,對于自己的能力會(huì)有不小的提升——而且提升不只限于nginx一方面,技術(shù)理論一通百通,對于理解其他內(nèi)容也會(huì)有很大幫助。
    的頭像 發(fā)表于 10-05 09:01 ?2540次閱讀
    一文知道<b class='flag-5'>Nginx</b>服務(wù)器的<b class='flag-5'>緩存</b>原理和機(jī)制

    什么是Web緩存,HTTP緩存和瀏覽器緩存的區(qū)別

    前端緩存主要是分為HTTP緩存和瀏覽器緩存。其中HTTP緩存是在HTTP請求傳輸時(shí)用到的緩存,主要在服務(wù)器代碼上設(shè)置;而瀏覽器
    發(fā)表于 09-13 04:17 ?9582次閱讀
    什么是Web<b class='flag-5'>緩存</b>,HTTP<b class='flag-5'>緩存</b>和瀏覽器<b class='flag-5'>緩存</b>的區(qū)別

    淺談架構(gòu)設(shè)計(jì)緩存技術(shù)

    緩存在架構(gòu)設(shè)計(jì)占有重要地位。緩存在提升性能也扮演重要的角色。常見的有對資源的緩存,比如數(shù)據(jù)庫連接池、http連接池,還有對數(shù)據(jù)的
    的頭像 發(fā)表于 01-01 10:18 ?3015次閱讀
    淺談架構(gòu)設(shè)計(jì)<b class='flag-5'>中</b>的<b class='flag-5'>緩存</b>技術(shù)

    緩存的基本原理 緩存的分類

    緩存的主要手段有:瀏覽器緩存、CDN、反向代理、本地緩存、分布式緩存、數(shù)據(jù)庫緩存
    發(fā)表于 06-13 12:04 ?5010次閱讀

    如何在SpringBoot解決Redis的緩存穿透等問題

    今天給大家介紹一下如何在SpringBoot解決Redis的緩存穿透、緩存擊穿、緩存雪崩的問題。
    的頭像 發(fā)表于 04-28 11:35 ?856次閱讀

    Caffeine教程緩存介紹

    緩存(Cache)在代碼世界無處不在。從底層的CPU多級緩存,到客戶端的頁面緩存,處處都存在著緩存的身影。
    的頭像 發(fā)表于 05-22 11:01 ?1131次閱讀
    Caffeine教程<b class='flag-5'>緩存</b><b class='flag-5'>介紹</b>

    聊聊本地緩存和分布式緩存

    本地緩存 :應(yīng)用緩存組件,緩存組件和應(yīng)用在同一進(jìn)程緩存的讀寫非常快,沒有網(wǎng)絡(luò)開銷。但各應(yīng)
    發(fā)表于 06-11 15:12 ?977次閱讀
    聊聊本地<b class='flag-5'>緩存</b>和分布式<b class='flag-5'>緩存</b>

    如何使用緩存

    緩存技術(shù)被認(rèn)為是減輕服務(wù)器負(fù)載、降低網(wǎng)絡(luò)擁塞、增強(qiáng)Web可擴(kuò)展性的有效途徑之一,其基本思想是利用客戶訪問的時(shí)間局部性(Temproral Locality)原理, 將客戶訪問過的內(nèi)容在Cache
    的頭像 發(fā)表于 10-08 14:07 ?800次閱讀

    Redis緩存預(yù)熱+緩存雪崩+緩存擊穿+緩存穿透要點(diǎn)簡析

    緩存預(yù)熱就是系統(tǒng)上線后,提前將相關(guān)的緩存數(shù)據(jù)直接加載到緩存系統(tǒng)。
    的頭像 發(fā)表于 12-25 09:41 ?1055次閱讀
    Redis<b class='flag-5'>緩存</b>預(yù)熱+<b class='flag-5'>緩存</b>雪崩+<b class='flag-5'>緩存</b>擊穿+<b class='flag-5'>緩存</b>穿透要點(diǎn)簡析

    緩存之美——如何選擇合適的本地緩存

    Guava cache是Google開發(fā)的Guava工具包中一套完善的JVM本地緩存框架,底層實(shí)現(xiàn)的數(shù)據(jù)結(jié)構(gòu)類似于ConcurrentHashMap,但是進(jìn)行了更多的能力拓展,包括緩存過期時(shí)間設(shè)置、緩存容量設(shè)置、多種淘汰策略、
    的頭像 發(fā)表于 11-17 14:24 ?657次閱讀
    <b class='flag-5'>緩存</b>之美——如何選擇合適的本地<b class='flag-5'>緩存</b>?

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會(huì)員交流學(xué)習(xí)
    • 獲取您個(gè)性化的科技前沿技術(shù)信息
    • 參加活動(dòng)獲取豐厚的禮品
    主站蜘蛛池模板: 亚洲另类中文字幕 | 中文在线无码高潮潮喷在线 | 亚洲视频黄 | 国产传媒18精品免费1区 | 色哟哟网站入口在线观看视频 | 欧美日韩中文字幕综合图区 | 中文字幕日本久久2019 | 九九热这里只有精品视频免费 | 亚洲国产精品免费线观看视频 | 9国产露脸精品国产麻豆 | 毛片免费观看的视频 | 亚洲国产精麻豆 | 99精品视频在线免费观看 | ebc5恐怖5a26房间| 国产乱码卡二卡三卡4W | 红尘影院在线观看 | 国产一级做a爰片久久毛片男 | 日韩熟女精品一区二区三区 | 亚洲一区综合图区 | 思思re热免费精品视频66 | 综合色中色 | 久久秋霞理论电影 | 国产中文在线 | 俄罗斯aaaaa一级毛片 | 亚洲日韩精品AV中文字幕 | 亚洲三级黄色片 | 琪琪色在线播放 | 亚洲午夜性春猛交XXXX | 日韩人妻精品久久日 | 我的年轻漂亮继坶三级 | 麻豆乱码一卡二卡三卡视频 | 欧美高清xxx | 在线国产视频观看 | 国产免费看片 | 欧美老少欢杂交另类 | 2021久久99国产熟女人妻 | 国产成人在线视频观看 | 午夜伦理网 | 国产精品私人玩物在线观看 | 国产亚洲精品免费视频 | 久久国产视频网 |