一、采用varnish為nginx實(shí)現(xiàn)緩存加速
1、實(shí)驗(yàn)環(huán)境:
(1)一臺(tái)varnish緩存服務(wù)器,一臺(tái)nginx服務(wù)器
(2)關(guān)閉防火墻和selinux
2.配置varnish
(1)修改varnish配置文件:
創(chuàng)建目錄:mkdir -pv /data/varnish/cache
修改屬主:chown varnish.varnish /data/varnish/cache
(2)測(cè)試:
二、varnish實(shí)現(xiàn)動(dòng)靜分離
(1)varnish配置:
(2)測(cè)試:
(3)附件內(nèi)容設(shè)置多個(gè)組,并做負(fù)載:
示例:
import directors
backend imgsrv1 {
.host = "192.168.10.11";
.port = "80";
}
backend imgsrv2 {
.host = "192.168.10.12";
.port = "80";
}
backend appsrv1 {
.host = "192.168.10.21";
.port = "80";
}
backend appsrv2 {
.host = "192.168.10.22";
.port = "80";
}
sub vcl_init {
new imgsrvs = directors.random();
imgsrvs.add_backend(imgsrv1,10);
imgsrvs.add_backend(imgsrv2,20);
new staticsrvs = directors.round_robin();
appsrvs.add_backend(appsrv1);
appsrvs.add_backend(appsrv2);
new appsrvs = directors.hash();
appsrvs.add_backend(appsrv1,1);
appsrvs.add_backend(appsrv2,1);
}
sub vcl_recv {
if (req.url ~ "(?i)\.(css|js)$" {
set req.backend_hint = staticsrvs.backend();
}
if (req.url ~ "(?i)\.(jpg|jpeg|png|gif)$" {
set req.backend_hint = imgsrvs.backend();
} else {
set req.backend_hint = appsrvs.backend(req.http.cookie);
}
}
安全檢測(cè):
.probe:定義健康狀態(tài)檢測(cè)方法;
.url:檢測(cè)時(shí)要請(qǐng)求的URL,默認(rèn)為”/";
.request:發(fā)出的具體請(qǐng)求;
.request =
"GET /.healthtest.html HTTP/1.1"
"Host: www.ww.com"
"Connection: close"
.window:基于最近的多少次檢查來判斷其健康狀態(tài);
.threshold:最近.window中定義的這么次檢查中至有.threshhold定義的次數(shù)是成功的;成功閾值;
.interval:檢測(cè)頻度;
.timeout:超時(shí)時(shí)長(zhǎng);
.expected_response:期望的響應(yīng)碼,默認(rèn)為200;
健康狀態(tài)檢測(cè)的配置方式:
probe PB_NAME { }
backend NAME = {
.probe = PB_NAME;
...
}
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。