Nginx FastCGI經(jīng)典命令介紹
Nginx FastCGI一個(gè)十分經(jīng)典的程序,但是有人對(duì)這個(gè)經(jīng)典還是有些不了解。下面我們就詳細(xì)的看看有關(guān)的命令。希望在之后可以更好的進(jìn)行相關(guān)操作。關(guān)于Nginx FastCGI的幾個(gè)指令:
- fastcgi_cache_path /usr/local/Nginx/fastcgi_cache levels=
1:2 keys_zone=TEST:10m inactive=5m;
這個(gè)指令為FastCGI緩存指定一個(gè)路徑,目錄結(jié)構(gòu)等級(jí),關(guān)鍵字區(qū)域存儲(chǔ)時(shí)間和非活動(dòng)刪除時(shí)間。
- fastcgi_connect_timeout 300;
指定連接到后端FastCGI的超時(shí)時(shí)間。
- fastcgi_send_timeout 300;
向FastCGI傳送請(qǐng)求的超時(shí)時(shí)間,這個(gè)值是指已經(jīng)完成兩次握手后向FastCGI傳送請(qǐng)求的超時(shí)時(shí)間。
- fastcgi_read_timeout 300;
接收FastCGI應(yīng)答的超時(shí)時(shí)間,這個(gè)值是指已經(jīng)完成兩次握手后接收FastCGI應(yīng)答的超時(shí)時(shí)間。
- fastcgi_buffer_size 4k;
指定讀取FastCGI應(yīng)答第一部分需要用多大的緩沖區(qū),一般第一部分應(yīng)答不會(huì)超過(guò)1k,由于頁(yè)面大小為4k,所以這里設(shè)置為4k。
- fastcgi_buffers 8 4k;
指定本地需要用多少和多大的緩沖區(qū)來(lái)緩沖FastCGI的應(yīng)答。
- fastcgi_busy_buffers_size 8k;
這個(gè)指令我也不知道是做什么用,只知道默認(rèn)值是fastcgi_buffers的兩倍。
- fastcgi_temp_file_write_size 8k;
在寫(xiě)入fastcgi_temp_path時(shí)將用多大的數(shù)據(jù)塊,默認(rèn)值是fastcgi_buffers的兩倍。
- fastcgi_cache TEST
開(kāi)啟FastCGI緩存并且為其制定一個(gè)名稱。個(gè)人感覺(jué)開(kāi)啟緩存非常有用,可以有效降低CPU負(fù)載,并且防止502錯(cuò)誤。
- fastcgi_cache_valid 200 302 1h;
- fastcgi_cache_valid 301 1d;
- fastcgi_cache_valid any 1m;
為指定的應(yīng)答代碼指定緩存時(shí)間,如上例中將200,302應(yīng)答緩存一小時(shí),301應(yīng)答緩存1天,其他為1分鐘。
- fastcgi_cache_min_uses 1;
緩存在fastcgi_cache_path指令inactive參數(shù)值時(shí)間內(nèi)的最少使用次數(shù),如上例,如果在5分鐘內(nèi)某文件1次也沒(méi)有被使用,那么這個(gè)文件將被移除。
- fastcgi_cache_use_stale error timeout invalid_header http_500;
不知道這個(gè)參數(shù)的作用,猜想應(yīng)該是讓Nginx FastCGI知道哪些類型的緩存是沒(méi)用的。以上為Nginx中FastCGI相關(guān)參數(shù),另外,F(xiàn)astCGI自身也有一些配置需要進(jìn)行優(yōu)化,如果你使用php-fpm來(lái)管理FastCGI,可以修改配置文件中的以下值:
- <value name="max_children">60</value>
同時(shí)處理的并發(fā)請(qǐng)求數(shù),即它將開(kāi)啟最多60個(gè)子線程來(lái)處理并發(fā)連接。
- <value name="rlimit_files">102400</value>
最多打開(kāi)文件數(shù)。
- <value name="max_requests">204800</value>
每個(gè)進(jìn)程在重置之前能夠執(zhí)行的最多請(qǐng)求數(shù)。以上就是對(duì)Nginx FastCGI的詳細(xì)介紹。
【編輯推薦】