使用Nginx的proxy_cache緩存功能取代Squid |
發(fā)布時(shí)間: 2012/9/11 14:31:24 |
Nginx從0.7.48版本開(kāi)始,支持了類(lèi)似Squid的緩存功能。這個(gè)緩存是把URL及相關(guān)組合當(dāng)作Key,用md5編碼哈希后保存在硬盤(pán)上,所以它可以支持任意URL鏈接,同時(shí)也支持404/301/302這樣的非200狀態(tài)碼。雖然目前官方的Nginx Web緩存服務(wù)只能為指定URL或狀態(tài)碼設(shè)置過(guò)期時(shí)間,不支持類(lèi)似Squid的PURGE指令,手動(dòng)清除指定緩存頁(yè)面,但是,通過(guò)一個(gè)第三方的Nginx模塊,可以清除指定URL的緩存。
Nginx的Web緩存服務(wù)主要由proxy_cache相關(guān)指令集和fastcgi_cache相關(guān)指令集構(gòu)成,前者用于反向代理時(shí),對(duì)后端內(nèi)容源服務(wù)器進(jìn)行緩存,后者主要用于對(duì)FastCGI的動(dòng)態(tài)程序進(jìn)行緩存。兩者的功能基本上一樣。
最新的Nginx 0.8.32版本,proxy_cache和fastcgi_cache已經(jīng)比較完善,加上第三方的ngx_cache_purge模塊(用于清除指定URL的緩存),已經(jīng)可以完全取代Squid。我們已經(jīng)在生產(chǎn)環(huán)境使用了 Nginx 的 proxy_cache 緩存功能超過(guò)兩個(gè)月,十分穩(wěn)定,速度不遜于 Squid。
在功能上,Nginx已經(jīng)具備Squid所擁有的Web緩存加速功能、清除指定URL緩存的功能。而在性能上,Nginx對(duì)多核CPU的利用,勝過(guò)Squid不少。另外,在反向代理、負(fù)載均衡、健康檢查、后端服務(wù)器故障轉(zhuǎn)移、Rewrite重寫(xiě)、易用性上,Nginx也比Squid強(qiáng)大得多。這使得一臺(tái)Nginx可以同時(shí)作為“負(fù)載均衡服務(wù)器”與“Web緩存服務(wù)器”來(lái)使用。
1、Nginx 負(fù)載均衡與緩存服務(wù)器在 Linux 下的編譯安裝:
ulimit -SHn 65535
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.00.tar.gz
tar zxvf pcre-8.00.tar.gz
cd pcre-8.00/
./configure
make && make install
cd ../
wget http://labs.frickle.com/files/ngx_cache_purge-1.0.tar.gz
tar zxvf ngx_cache_purge-1.0.tar.gz
wget http://nginx.org/download/nginx-0.8.32.tar.gz
tar zxvf nginx-0.8.32.tar.gz
cd nginx-0.8.32/
./configure --user=www --group=www --add-module=../ngx_cache_purge-1.0 --prefix=/usr/local/webserver/nginx --with-http_stub_status_module --with-http_ssl_module
make && make install
cd ../ 本文出自:億恩科技【www.allwellnessguide.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |