使用Varnish加速Web

2021-09-23 22:35:41 字數 2481 閱讀 9011

4.使用varnish加速web

問題通過配置varnish快取伺服器,實現如下目標:

使用varnish加速後端apache web服務

使用varnishadm管理快取頁面

使用varnishstat檢視varnish狀態

方案通過原始碼編譯安裝varnish快取伺服器

編譯安裝varnish軟體

複製啟動指令碼與配置檔案

修改配置檔案,快取**源web伺服器,實現web加速功能

使用3臺rhel6虛擬機器,其中一台作為web伺服器(192.168.4.205)、一台作為varnish**伺服器(192.168.4.5),另外一台作為測試用的linux客戶機(192.168.4.100),如圖-6所示。

圖-6對於web伺服器的部署,此實驗中僅需要安裝httpd軟體、啟動服務,並生成測試首頁檔案即可,預設httpd**根路徑為/var/www/html,首頁文件名稱為index.html。

步驟實現此案例需要按照如下步驟進行。

步驟一:構建web伺服器

1)使用yum安裝web軟體包

2)啟用httpd服務,並設為開機自動執行

httpd服務預設通過tcp 80埠監聽客戶端請求:

3)為web訪問建立測試檔案

在**根目錄/var/www/html下建立乙個名為index.html的首頁檔案:

[root@pc205 ~]# cat /var/www/html/index.html

welcome步驟二:部署varnish快取伺服器 1)編譯安裝軟體 [root@svr5 ~]# yum -y install readline-devel pcre-devel //安裝軟體依賴包 [root@svr5 ~]# useradd -s /sbin/nologin varnish //建立賬戶 [root@svr5 ~]# tar -xzf varnish-3.0.6.tar.gz [root@svr5 ~]# cd varnish-3.0.6 [root@svr5 varnish-3.0.6]# ./configure --prefix=/usr/local/varnish [root@svr5 varnish-3.0.6]# make && make install 2)複製啟動指令碼及配置檔案 [root@svr5 varnish-3.0.6]# cp redhat/varnish.initrc /etc/init.d/varnish [root@svr5 varnish-3.0.6]# cp redhat/varnish.sysconfig /etc/sysconfig/varnish [root@svr5 varnish-3.0.6]# cp redhat/varnish_reload_vcl /usr/bin/ [root@svr5 varnish-3.0.6]# ln -s /usr/local/varnish/sbin/varnishd /usr/sbin/ 3)修改varnis**件 [root@svr5 ~]# vim /etc/sysconfig/varnish varnish_vcl_conf=/etc/varnish/default.vcl #vcl檔案路徑 varnish_listen_port=80 #預設埠 varnish_secret_file=/etc/varnish/secret #金鑰檔案 varnish_storage_size=64m #快取大小 varnish_storage="malloc,$" #基於記憶體方式 4)修改**配置檔案 [root@svr5 ~]# mkdir /etc/varnish [root@svr5 ~]# cp /usr/local/varnish/etc/default.vcl /etc/varnish/ [root@svr5 ~]# uuidgen > /etc/varnish/secret [root@svr5 ~]# vim /etc/varnish/default.vcl backend default [root@svr5 ~]# service varnish start 步驟三:客戶端測試 1)通過/etc/hosts檔案,配置網域名稱解析,將網域名稱解析為squid伺服器ip位址 [root@client ~]# cat /etc/hosts .. .. 192.168.4.5 www.tarena.com 2)客戶端開啟瀏覽器,分別訪問兩個不同的網域名稱站點 [root@client ~]# firefox

CDN加速的實現 varnish

cdn的全稱 content delivery network,即內容分發網路。其基本思路是盡可能避開網際網路上有可能影響資料傳輸速度和穩定性的瓶頸和環節,使內容傳輸的更快 更穩定。通過在網路各處放置節點伺服器所構成的在現有的網際網路基礎之上的一層智慧型虛擬網路,cdn系統能夠實時地根據網路流量和各...

varnish的CDN加速功能實現

varnish的加速 清除varnish快取 配置default.vcl加速配置 給真機做解析 測試manger主 管理mangement 程序 fork乙個work子程序 讀入 更新配置 vcl檔案編譯 varnish監控,初始化varnish及提供varnish管理介面 management程序...

高效能HTTP加速器varnish

varnish是一款高效能且開元的的反向 伺服器和http加速器,是乙個輕量級的cache 和反向 軟體。它與目前比較流行的squid相比有一下異同 1 都是乙個反向 伺服器 2 都是開源軟體 3 varnish的穩定性很高,兩者在完成相同負荷的工作時,squid伺服器發生故障的機率要高於vanis...