摘要:使用項目中采用作為代理服務(wù)器,靜態(tài)接口的數(shù)據(jù)都緩存在中,這樣可以有效減小源服務(wù)器的負載。忽略頭部這里有幾個要注意的地方定制的時,一定要注意謹慎使用值變化范圍比較大的參數(shù)。這里忽略掉這個頭部才能使生效。配置完成后,重啟,至此,已經(jīng)啟用。
Nginx--proxy cache使用
項目中采用Nginx作為代理服務(wù)器,靜態(tài)接口的數(shù)據(jù)都緩存在nginx中,這樣可以有效減小源服務(wù)器的負載。在這里整理一下Nginx proxy cache的配置。
nginx proxy cache 原理
nginx.conf中配置proxy_cache:
proxy_temp_path /data/nginx_cache/proxy_cache/proxy_temp_dir; proxy_cache_path /dev/shm/proxy_cache_dir levels=1:2 keys_zone=cache_one:200m inactive=2d max_size=2g; proxy_cache_use_stale error timeout invalid_header updating http_500 http_502 http_503 http_504 http_404;
proxy_cache_path 緩存文件路徑
levels 設(shè)置緩存文件目錄層次;levels=1:2 表示兩級目錄
keys_zone 設(shè)置緩存名字和共享內(nèi)存大小
inactive 在指定時間內(nèi)沒人訪問則被刪除
max_size 最大緩存空間,如果緩存空間滿,默認覆蓋掉緩存時間最長的資源。
proxy_temp_path : 使用temp_path存儲,如果不使用,則配置在max_size后 use_temp_path=off;
在location中使用proxy cache:
location ^~ /static/ { ... ... #定制proxy_cache的key,去除imei和sn等個性化參數(shù)。 set $custom_proxy_cache_key $host$uri$is_args$args; include vhosts/customize_proxy_cache_key; #忽略Expires、Set-Cookie頭部 proxy_ignore_headers Expires Set-Cookie; proxy_cache cache_one; proxy_cache_valid 200 304 10m; proxy_cache_key $custom_proxy_cache_key; add_header X-Proxy-Cache $upstream_cache_status; expires 10m; ... ... }
這里有幾個要注意的地方:
定制cache的key時,一定要注意:**謹慎使用值變化范圍比較大的參數(shù)**。因為,這里使用參數(shù)的值作為cache的key的,當(dāng)值變化返回很大的時候,一方面會導(dǎo)致緩存文件變得很大,另一方面緩存也就失去意義。
這里有一個知識點:
源服務(wù)器是通過Set-Cookie來告訴瀏覽器cookie的信息,包括cookie值,path,以及域。只要瀏覽器查看請求滿足本地cookie的域,就把這個cookie攜帶入頭部傳給server。這里忽略掉這個頭部才能使nginx proxy_cache 生效。
上邊customize_proxy_cache_key具體配置如下:
set $custom_params $query_string; #nginx緩存key去除imei if ( $custom_params ~ ^(.*)(&imei=[^&]+)(.*)$) { set $a $1; set $c $3; set $custom_params "${a}${c}"; } set $custom_proxy_cache_key $host$uri$is_args$custom_params;
這里,就將參數(shù)中的imei和sn用戶唯一值的參數(shù)去除,保證cache健康。
配置完成后,重啟nginx,至此,nginx cache已經(jīng)啟用。
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/39843.html
摘要:反向代理模塊何為反向代理接收客戶端請求,并把請求交給后端服務(wù)器處理,后端服務(wù)器處理完成后,響應(yīng)通過反向代理服務(wù)器返回給客戶端。作為反向代理服務(wù)器經(jīng)常要配置一組服務(wù)器,以實現(xiàn)負載均衡。 1、nginx反向代理模塊 何為反向代理?接收客戶端請求,并把請求交給后端服務(wù)器處理,后端服務(wù)器處理完成后,響應(yīng)通過反向代理服務(wù)器返回給客戶端。反向代理可實現(xiàn)局域網(wǎng)中的服務(wù)器可被公網(wǎng)中的客戶端訪問,也可實...
序 本文主要解析一下nginx ngx_http_proxy_module中的cache相關(guān)配置參數(shù)。 proxy_cache 名稱 默認配置 作用域 官方說明 中文解讀 模塊 proxy_cache proxy_cache off; http, server, location Defines a shared memory zone used for caching. The sam...
摘要:啟用或禁用反應(yīng)是否啟用壓縮響應(yīng)報文不是所有瀏覽器都支持壓縮機制設(shè)置一個響應(yīng)的壓縮級別。可接受的值在到之間。 博文參考 http://wiki.nginx.org/HttpUpstreamConsistentHash http://wiki.nginx.org/HttpUpstreamFairModule http://wiki.nginx.org/HttpUpstreamRequest...
摘要:啟用或禁用反應(yīng)是否啟用壓縮響應(yīng)報文不是所有瀏覽器都支持壓縮機制設(shè)置一個響應(yīng)的壓縮級別。可接受的值在到之間。 博文參考 http://wiki.nginx.org/HttpUpstreamConsistentHash http://wiki.nginx.org/HttpUpstreamFairModule http://wiki.nginx.org/HttpUpstreamRequest...
閱讀 2001·2019-08-29 16:27
閱讀 1370·2019-08-29 16:14
閱讀 3372·2019-08-29 14:18
閱讀 3455·2019-08-29 13:56
閱讀 1252·2019-08-29 11:13
閱讀 2118·2019-08-28 18:19
閱讀 3439·2019-08-27 10:57
閱讀 2273·2019-08-26 11:39