Nginx配置中FastCGI的幾個(gè)命令
Nginx配置一直以來都在程序員的工作中不斷的使用,在這個(gè)中有很多的問題需要我們不斷的學(xué)習(xí),其中FastCGI就是有不少的問題需要我們解決,下面就是關(guān)于FastCGI在Nginx配置的幾個(gè)指令:
- fastcgi_cache_path /usr/local/Nginx/fastcgi_cache
levels=1:2 keys_zone=TEST:10m inactive=5m;
這個(gè)指令為Nginx配置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ì)超過1k,由于頁面大小為4k,所以這里設(shè)置為4k。
- fastcgi_buffers 8 4k;
指定本地需要用多少和多大的緩沖區(qū)來緩沖FastCGI的應(yīng)答。
- fastcgi_busy_buffers_size 8k;
這個(gè)指令我也不知道是做什么用,只知道默認(rèn)值是fastcgi_buffers的兩倍。
- fastcgi_temp_file_write_size 8k;
在寫入fastcgi_temp_path時(shí)將用多大的數(shù)據(jù)塊,默認(rèn)值是fastcgi_buffers的兩倍。
- fastcgi_cache TEST
開啟FastCGI緩存并且為其制定一個(gè)名稱。個(gè)人感覺開啟緩存非常有用,可以有效降低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次也沒有被使用,那么這個(gè)文件將被移除。
- fastcgi_cache_use_stale error timeout invalid_
header http_500;
不知道這個(gè)參數(shù)的作用,猜想應(yīng)該是讓Nginx知道哪些類型的緩存是沒用的。
以上為Nginx配置中FastCGI相關(guān)參數(shù),另外,F(xiàn)astCGI自身也有一些配置需要進(jìn)行優(yōu)化,如果你使用php-fpm來管理FastCGI,可以修改配置文件中的以下值:
- <value name="max_children">60</value>
同時(shí)處理的并發(fā)請(qǐng)求數(shù),即它將開啟最多60個(gè)子線程來處理并發(fā)連接。
- <value name="rlimit_files">102400</value>
最多打開文件數(shù)。
- <value name="max_requests">204800</value>
每個(gè)進(jìn)程在重置之前能夠執(zhí)行的最多請(qǐng)求數(shù)。以上就是對(duì)Nginx配置中FastCGI相關(guān)參數(shù)的詳細(xì)介紹。
【編輯推薦】