利用squid反向代理提高網(wǎng)站性能 |
發(fā)布時(shí)間: 2012/5/15 18:26:54 |
本文在介紹 squid 反向代理的工作原理的基礎(chǔ)上,指出反向代理技術(shù)在提高網(wǎng)站訪問速度,增強(qiáng)網(wǎng)站可用性、安全性方面有很好的用途。作者在具體的實(shí)驗(yàn)環(huán)境下,利用 DNS 輪詢和 Squid 反向代理技術(shù),實(shí)現(xiàn)了網(wǎng)站的負(fù)載均衡,從而提高了網(wǎng)站的可用性和可靠性。 本文在介紹 squid 反向代理的工作原理的基礎(chǔ)上,指出反向代理技術(shù)在提高網(wǎng)站訪問速度,增強(qiáng)網(wǎng)站可用性、安全性方面有很好的用途。作者在具體的實(shí)驗(yàn)環(huán)境下,利用 DNS 輪詢和 Squid 反向代理技術(shù),實(shí)現(xiàn)了網(wǎng)站的負(fù)載均衡,從而提高了網(wǎng)站的可用性和可靠性。 現(xiàn)在有許多大型的門戶網(wǎng)站如 SINA 都采用 squid 反向代理技術(shù)來加速網(wǎng)站的訪問速度,可將不同的 URL 請(qǐng)求分發(fā)到后臺(tái)不同的 WEB 服務(wù)器上,同時(shí)互聯(lián)網(wǎng)用戶只能看到反向代理服務(wù)器的地址,加強(qiáng)了網(wǎng)站的訪問安全。 反向代理服務(wù)器又稱為 WEB 加速服務(wù)器,它位于 WEB 服務(wù)器的前端 反向代理服務(wù)器是針對(duì) WEB 服務(wù)器設(shè)置的,后臺(tái) WEB 服務(wù)器對(duì)互聯(lián)網(wǎng)用戶是透明的,用戶只能看到反向代理服務(wù)器的地址,不清楚后臺(tái) WEB 服務(wù)器是如何組織架構(gòu)的。當(dāng)互聯(lián)網(wǎng)用戶請(qǐng)求 WEB 服務(wù)時(shí),DNS 將請(qǐng)求的域名解析為反向代理服務(wù)器的 IP 地址,這樣 URL 請(qǐng)求將被發(fā)送到反向代理服務(wù)器,由反向代理服務(wù)器負(fù)責(zé)處理用戶的請(qǐng)求與應(yīng)答、與后臺(tái) WEB 服務(wù)器交互。利用反向代理服務(wù)器減輕了后臺(tái) WEB 服務(wù)器的負(fù)載,提高了訪問速度,同時(shí)避免了因用戶直接與 WEB 服務(wù)器通信帶來的安全隱患。 目前有許多反向代理軟件,比較有名的有 Nginx 和 Squid 。 Nginx 是由 Igor Sysoev 為俄羅斯訪問量第二的 Rambler.ru 站點(diǎn)開發(fā)的,是一個(gè)高性能的 HTTP 和反向代理服務(wù)器,也是一個(gè) IMAP/POP3/SMTP 代理服務(wù)器。
客戶端請(qǐng)求訪問 WEB 服務(wù)時(shí),DNS 將訪問的域名解析為 Squid 反向代理服務(wù)器的 IP 地址,這樣客戶端的 URL 請(qǐng)求將被發(fā)送到反向代理服務(wù)器。如果 Squid 反向代理服務(wù)器中緩存了該請(qǐng)求的資源,則將該請(qǐng)求的資源直接返回給客戶端,否則反向代理服務(wù)器將向后臺(tái)的 WEB 服務(wù)器請(qǐng)求資源,然后將請(qǐng)求的應(yīng)答返回給客戶端,同時(shí)也將該應(yīng)答緩存在本地,供下一個(gè)請(qǐng)求者使用。 Squid 反向代理一般只緩存可緩沖的數(shù)據(jù)(比如 html 網(wǎng)頁和圖片等),而一些 CGI 腳本程序或者 ASP、JSP 之類的動(dòng)態(tài)程序默認(rèn)不緩存。它根據(jù)從 WEB 服務(wù)器返回的 HTTP 頭標(biāo)記來緩沖靜態(tài)頁面。有四個(gè)最重要 HTTP 頭標(biāo)記:
本實(shí)例的域名是 wenjin.cache. 本文出自:億恩科技【prubsntakaful.com】 服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |