摘要:定義哪些狀態(tài)碼要緩存和換成多久定義哪些情況下用過期緩存定義的,示例中就以請(qǐng)求的作為緩存的,會(huì)取這個(gè)的作為緩存文件,如果設(shè)置了緩存哈希目錄,會(huì)從后往前取相應(yīng)的位數(shù)做為目錄。用哪個(gè)緩存空間那些請(qǐng)求使用緩存段虛擬主機(jī)段天津里添加調(diào)試信息
有一個(gè)API接口訪問量很大,而且對(duì)內(nèi)容的時(shí)效性沒有很高要求,使用 fastcgi_cache 可以很好的降低服務(wù)器負(fù)載,不過 laravel 的頁面默認(rèn)幾乎都會(huì)帶上 no-cache 的 頭信息,所以 api 接口需要把這個(gè)頭信息去掉才能讓 nginx 的 fastcgi_cache 命中,方法:
return Response::view("pages.index", $data) ->setCache(array( "public" => 1 )); //這里還有很多參數(shù)可以設(shè)置
如果你使用了CDN可以設(shè)置 max_age 為cdn緩存時(shí)長,還可以 last_modified 為文章修改時(shí)間, etag 等。
我是開啟了 nginx 的fastcgi_cache 功能 所以只需要一簡單的 public 就可以了.
nginx fastcgi_cache 設(shè)置簡單說明
文件 fcgi_cache.conf :
fastcgi_temp_path /tmp/ngx_fcgi_tmp; fastcgi_cache_path /tmp/ngx_fcgi_cache levels=2:2 keys_zone=ngx_fcgi_cache:512m inactive=3h max_size=5g; fastcgi_cache_valid 200 3h; fastcgi_cache_use_stale error timeout invalid_header http_500; fastcgi_cache_key $request_method://$host$request_uri; fastcgi_cache_methods GET HEAD;
fastcgi_temp_path:生成fastcgi_cache臨時(shí)文件目錄
fastcgi_cache_path:fastcgi_cache緩存目錄,可以設(shè)置目錄哈希層級(jí),比如2:2會(huì)生成256*256個(gè)字目錄,keys_zone是這個(gè)緩存空間的名字,cache是用多少內(nèi)存(主要緩存key和文件元信息,不會(huì)緩存頁面),inactive表示默認(rèn)失效時(shí)間,max_size表示最多用多少硬盤空間,需要注意的是fastcgi_cache緩存是先寫在fastcgi_temp_path再移到fastcgi_cache_path,所以這兩個(gè)目錄最好在同一個(gè)分區(qū),從0.8.9之后可以在不同的分區(qū),不過還是建議放同一分區(qū)。
fastcgi_cache_valid:定義哪些http狀態(tài)碼要緩存,和換成多久 1d 3h 5m 10s
fastcgi_cache_use_stale:定義哪些情況下用過期緩存
fastcgi_cache_key:定義fastcgi_cache的key,示例中就以請(qǐng)求的URI作為緩存的key,Nginx會(huì)取這個(gè)key的md5作為緩存文件,如果設(shè)置了緩存哈希目錄,Nginx會(huì)從后往前取相應(yīng)的位數(shù)做為目錄。
fastcgi_cache:用哪個(gè)緩存空間
fastcgi_cache_methods:那些請(qǐng)求method 使用緩存
nginx.conf http { ... } 段 include fcgi_cache.conf;
虛擬主機(jī) location php 段 天津
add_header X-Cache-CFC "$upstream_cache_status - $upstream_response_time"; #header 里添加調(diào)試信息 fastcgi_cache ngx_fcgi_cache;
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/39046.html
摘要:定義哪些狀態(tài)碼要緩存和換成多久定義哪些情況下用過期緩存定義的,示例中就以請(qǐng)求的作為緩存的,會(huì)取這個(gè)的作為緩存文件,如果設(shè)置了緩存哈希目錄,會(huì)從后往前取相應(yīng)的位數(shù)做為目錄。用哪個(gè)緩存空間那些請(qǐng)求使用緩存段虛擬主機(jī)段天津里添加調(diào)試信息 有一個(gè)API接口訪問量很大,而且對(duì)內(nèi)容的時(shí)效性沒有很高要求,使用 fastcgi_cache 可以很好的降低服務(wù)器負(fù)載,不過 laravel 的頁面默認(rèn)幾乎...
摘要:定義哪些狀態(tài)碼要緩存和換成多久定義哪些情況下用過期緩存定義的,示例中就以請(qǐng)求的作為緩存的,會(huì)取這個(gè)的作為緩存文件,如果設(shè)置了緩存哈希目錄,會(huì)從后往前取相應(yīng)的位數(shù)做為目錄。用哪個(gè)緩存空間那些請(qǐng)求使用緩存段虛擬主機(jī)段天津里添加調(diào)試信息 有一個(gè)API接口訪問量很大,而且對(duì)內(nèi)容的時(shí)效性沒有很高要求,使用 fastcgi_cache 可以很好的降低服務(wù)器負(fù)載,不過 laravel 的頁面默認(rèn)幾乎...
摘要:指令中的參數(shù)時(shí)間內(nèi)文件的最少使用次數(shù),如果超過這個(gè)數(shù)字,文件描述符一直是在緩存中打開的,如上例,如果有一個(gè)文件在時(shí)間內(nèi)一次沒被使用,它將被移除。 一、這里的優(yōu)化主要是指對(duì)nginx的配置優(yōu)化,一般來說nginx配置文件中對(duì)優(yōu)化比較有作用的主要有以下幾項(xiàng): nginx進(jìn)程數(shù),建議按照cpu數(shù)目來指定,一般跟cpu核數(shù)相同或?yàn)樗谋稊?shù)。 worker_processes 8; 為每...
摘要:可以使用命令恢復(fù)如下注意備份的是按照時(shí)間命名,請(qǐng)注意修改此外,升級(jí)為平滑升級(jí),升級(jí)過程不影響的運(yùn)行。最后本文介紹了和如何編譯模塊,如果對(duì)這個(gè)模塊有需要的童鞋,可以參考,至于寶塔,因?yàn)槟J(rèn)安裝了該模塊,所以就不多做介紹了。寶塔面板,lnmp一鍵包,oneinstack,都是我們常用的生產(chǎn)環(huán)境,但如果你用到Nginx fastcgi_cache模塊,那么寶塔是自帶的,lnmp安裝也非常簡單,只有...
閱讀 582·2021-11-22 14:45
閱讀 3070·2021-10-15 09:41
閱讀 1555·2021-10-11 10:58
閱讀 2797·2021-09-04 16:45
閱讀 2605·2021-09-03 10:45
閱讀 3238·2019-08-30 15:53
閱讀 1221·2019-08-29 12:28
閱讀 2133·2019-08-29 12:14