Nginx系列(二十一) HTTP Cache機制

2021-09-24 09:17:05 字數 1283 閱讀 4851

指令

含義proxy_cache_path/data/nginx/tmp-test levels=1:2 keys_zone=tmp-test:100m inactive=7d max_size=1000g;

proxy_cache_path

快取檔案路徑

levels

設定快取檔案目錄層次;levels=1:2 表示兩級目錄

keys_zone

設定快取名字和共享記憶體大小

inactive

在指定時間內沒人訪問則被刪除

max_size

最大快取空間,如果快取空間滿,預設覆蓋掉快取時間最長的資源。每乙個proxy_cache_path對應乙個ngx_http_file_cache_t結構體。

proxy_cache tmp-test使用名為tmp-test的快取配置

proxy_cache_key $uri定義快取唯一key,通過唯一key來進行hash訪問

proxy_cache_methods設定快取哪些http方法

proxy_cache_min_uses指定請求至少被傳送了多少次以上時才快取,可以防止低頻請求被快取

proxy_cache_bypass如果指定的任何乙個變數值不為空,或者不等於0,nginx就不會查詢快取,直接進行****

proxy_cache_lock/proxy_cache_lock_timeout當多個客戶端同時請求同乙份內容時,如果開啟proxy_cache_lock(預設off)則只有乙個請求被傳送至後端;其他請求將等待該內容返回;當第乙個請求返回時,其他請求將從快取中獲取內容返回;當第乙個請求超過了proxy_cache_lock_timeout超時時間(預設5s),則其他請求將同時請求到後端來獲取響應,且響應不會被快取;啟用proxy_cache_lock可以應對雪崩效應。

返回值處理

ngx_busy:請求cache_lock,等待快取生成,返回。

ngx_ok:快取檔案獲取成功,傳送快取。

ngx_declined:需要向後端傳送請求,可能快取也可能不快取。

Python Signal 訊號 (二十一)

常用訊號型別sigint 終止程序 中斷程序,不可通過signal.signal 捕捉 相當於ctrl c sigterm 終止程序 軟體終止訊號,可通過signal.signal 捕捉 預設訊號,當os.kill 沒有指明訊號型別時,預設的是該訊號 sigkill 終止程序 殺死程序,不可捕捉 相...

C primer 二十一 模板

模板定義以關鍵字template開始,後跟乙個模板引數列表 template parameter list 這是乙個逗號分隔的乙個或多個模板引數 template parameter 的列表,用小於號 包圍起來。模板引數列表的作用很像函式引數列表。函式引數列表定義了若干特定型別的區域性變數,但並末指...

命令二十一 tar

隨著壓縮技術的發展,linux環境下提供的壓縮指令和格式開始變多。為了便於使用者區分不同壓縮檔案使用的不同壓縮技術,進而使用合適的指令進行操作,一般使用字尾標識檔案在壓縮或打包過程中所使用的壓縮技術。常見的字尾有以下幾種 z compress程式壓縮產生的檔案 現在很少使用 gz gzip程式壓縮產...