欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx緩存在服務(wù)端 代理和客戶端的區(qū)別深入探索

 更新時(shí)間:2023年10月23日 14:15:05   作者:bug生產(chǎn)者  
這篇文章主要介紹了Nginx緩存在服務(wù)端 代理和客戶端的區(qū)別深入探索,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪

Nginx緩存

一般情況下系統(tǒng)用到的緩存有三種

  • 服務(wù)端緩存:緩存存在后端服務(wù)器,如redis
  • 代理緩存:緩存存儲(chǔ)在代理服務(wù)器或中間件,內(nèi)容從后端服務(wù)器獲取,保存在本地
  • 客戶端緩存:緩存在瀏覽器

[ ] 什么時(shí)候會(huì)出現(xiàn)304? 服務(wù)器響應(yīng)中包含有ETaglast-modified,瀏覽器下次去請(qǐng)求時(shí)會(huì)發(fā)送這兩個(gè)標(biāo)簽,直接返回304 Not Modified來告訴瀏覽器該資源沒有修改,不需要從服務(wù)器獲取最新的,瀏覽器就會(huì)直接使用本地緩存

Nginx使用的緩存屬于代理緩存

cache配置

Nginx通過proxy_cache來實(shí)現(xiàn)緩存。Buffer(緩沖)主要用于傳輸效率不同步或者優(yōu)先級(jí)不相同的設(shè)備之間傳輸數(shù)據(jù),通過對(duì)一方數(shù)據(jù)進(jìn)行臨時(shí)存放,在統(tǒng)一發(fā)送的方式傳遞給另一方,以降低進(jìn)程間的等待時(shí)間;Cache(緩存)主要用于將硬盤上已有的數(shù)據(jù)在內(nèi)存中建立緩存數(shù)據(jù),提高數(shù)據(jù)的訪問效率。

而proxy_cache只有在Proxy Buffer機(jī)制開啟的情況下Proxy Cache的配置才會(huì)發(fā)揮作用

相關(guān)配置

  • proxy_zone:zone | off 默認(rèn)是off,即關(guān)閉proxy_cache功能,zone為用于存放緩存的內(nèi)存區(qū)域名稱,可以在http/server、location塊內(nèi)使用
  • proxy_cache_path: path [levels=levels] keys_zone-name:size [inactive=time] [max_size=size] 只能在http塊內(nèi)使用

    • path設(shè)置緩存數(shù)據(jù)存放的路徑
    • levels設(shè)置目錄層級(jí),如levels=1:2,表示有兩個(gè)子目錄
    • keys_zone 設(shè)置內(nèi)存zone的名稱和大小,如keys_zone=my:10m
    • inactive設(shè)置緩存多長時(shí)間失效,當(dāng)磁盤上的緩存數(shù)據(jù)在該時(shí)間段內(nèi)沒有被訪問過,就會(huì)失效,數(shù)據(jù)將被刪除,默認(rèn)10s
    • max_size 設(shè)置硬盤中最多緩存多少數(shù)據(jù),數(shù)據(jù)超出,則刪除最少訪問的數(shù)據(jù)
  • proxy_cache_methods GET HEAD POST 設(shè)置緩存哪些方法
  • proxy_cache_min_uses 1 設(shè)置緩存的最小使用次數(shù)
  • proxy_cache_valid code time 對(duì)不同的狀態(tài)碼緩存不同的時(shí)間
  • proxy_cache_key line 設(shè)置緩存的key值

示例

http {
    proxy_cache_path    /var/www/cache #緩存地址
                        levels=1:2 #目錄分級(jí)
                        keys_zone=test_cache:10m #開啟的keys空間名字:空間大小(1m可以存放8000個(gè)key)
                        max_size=10g #目錄最大大小(超過時(shí),不常用的將被刪除)
                        inactive=60m #60分鐘內(nèi)沒有被訪問的緩存將清理
                        use_temp_path=off; #是否開啟存放臨時(shí)文件目錄,關(guān)閉默認(rèn)存儲(chǔ)在緩存地址
    server {
            # 使用緩存
        location / {
            proxy_cache test_cache;    #開啟緩存對(duì)應(yīng)的名稱,在keys_zone命名好
            proxy_cache_valid 200 304 12h;    #狀態(tài)碼為200 304的緩存12小時(shí)
            proxy_cache_valid any 10m;    #其他狀態(tài)緩存10分鐘
            proxy_cache_key $host$uri$is_args$args;    #設(shè)置key值
            add_header Nginx-Cache "$upstream_cache_status";
        }
        #不使用緩存
        if ($request_uri ~ ^/(login|register) ) {    #當(dāng)請(qǐng)求地址有l(wèi)ogin或register時(shí)
            set $nocache = 1;    #設(shè)置一個(gè)自定義變量為true
            }
            location / {
            proxy_no_cache $nocache $arg_nocache $arg_comment;
            proxy_no_cache $http_pragma $http_authoriztion;
            }
    }
}

expires配置

location ~ .*.(jpg|jpeg|gif|png)$ {
    # 設(shè)置圖片緩存過期時(shí)間
    expires 1d;
} 
# 匹配靜態(tài)目錄
location ~^ /(|css|js) / {
    expires 2h;
}

響應(yīng)會(huì)返回給瀏覽器Expires屬性,展示的是過期時(shí)間,之后再次請(qǐng)求該資源時(shí),如果沒有超過響應(yīng)返回的Expires時(shí),則不需要向服務(wù)器訪問,直接從緩存中獲取

靜態(tài)資源緩存

# 緩存zone levels表示緩存層級(jí)以及目錄位數(shù) keys_zone表示緩存內(nèi)存大小 inactive有效期 max_size所占用的最大磁盤大小
proxy_cache_path /data/nginx/cache_ad levels=1:2 keys_zone=cache_cache_ad:100m inactive=7d max_size=200m;
server {
    location / {
      # 緩存zone
      proxy_cache cache_ad;
      # 緩存key  進(jìn)行md5
      proxy_cache_key $host$uri$is_args$args;
      # 什么情況下進(jìn)行緩存存儲(chǔ)
      proxy_cache_valid 200 304 12h;
    }
}

以上就是Nginx緩存在服務(wù)端 代理和客戶端的區(qū)別深入探索的詳細(xì)內(nèi)容,更多關(guān)于Nginx緩存服務(wù)端代理客戶端的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • 詳解Nginx 502錯(cuò)誤解決辦法

    詳解Nginx 502錯(cuò)誤解決辦法

    這篇文章主要介紹了詳解Nginx 502錯(cuò)誤解決辦法的相關(guān)資料,這里說明幾種可能出現(xiàn)的502錯(cuò)誤的實(shí)例,并一一說明如何解決,需要的朋友可以參考下
    2017-08-08
  • Nginx代理Partainer的實(shí)現(xiàn)

    Nginx代理Partainer的實(shí)現(xiàn)

    本文主要介紹了Nginx代理Partainer的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-07-07
  • 詳解nginx如何配置HTTPS

    詳解nginx如何配置HTTPS

    本篇文章主要介紹了詳解nginx如何配置HTTPS,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-05-05
  • Rhit高效可視化Nginx日志查看工具

    Rhit高效可視化Nginx日志查看工具

    一個(gè)格式化 Nginx 日志,可快速閱讀、查看 Nginx 日志的工具。 可以每秒處理百萬行日志數(shù)據(jù),感興趣的可以了解一下
    2021-10-10
  • 使用Nginx反向代理到go-fastdfs的方法示例

    使用Nginx反向代理到go-fastdfs的方法示例

    這篇文章主要介紹了使用Nginx反向代理到go-fastdfs的方法示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Nginx中FastCGI如何配置優(yōu)化

    Nginx中FastCGI如何配置優(yōu)化

    這篇文章主要介紹了Nginx中FastCGI如何配置優(yōu)化,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-08-08
  • 詳細(xì)聊聊K8s容器內(nèi)nginx帶變量的域名解析

    詳細(xì)聊聊K8s容器內(nèi)nginx帶變量的域名解析

    這篇文章主要給大家介紹了關(guān)于K8s容器內(nèi)nginx帶變量域名的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2022-01-01
  • 封80端口應(yīng)對(duì)策略 Nginx反向代理For WIN2003超級(jí)傻瓜式配置

    封80端口應(yīng)對(duì)策略 Nginx反向代理For WIN2003超級(jí)傻瓜式配置

    封80應(yīng)對(duì)策略,Nginx反向代理ForWIN2003超級(jí)傻瓜式配置!
    2010-03-03
  • 解決Nginx + PHP(FastCGI)遇到的502 Bad Gateway錯(cuò)誤

    解決Nginx + PHP(FastCGI)遇到的502 Bad Gateway錯(cuò)誤

    昨日,有朋友問我,他將Web服務(wù)器換成Nginx 0.6.31 + PHP 4.4.7(FastCGI)后,有時(shí)候訪問會(huì)出現(xiàn)“502 Bad Gateway”錯(cuò)誤,如何解決。
    2009-10-10
  • Nginx配置二級(jí)域名的方法實(shí)現(xiàn)

    Nginx配置二級(jí)域名的方法實(shí)現(xiàn)

    本文主要介紹了Nginx配置二級(jí)域名的方法實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-03-03

最新評(píng)論