1. 程式人生 > >CDN初探:CDN及CDN加速

CDN初探:CDN及CDN加速

CDN

簡介

CDN的全稱是Content Delivery Network,即內容分發網路。其目的是通過在現有的Internet中增加一層新的CACHE(快取)層,將網站的內容釋出到最接近使用者的網路”邊緣“的節點,使使用者可以就近取得所需的內容,提高使用者訪問網站的響應速度。從技術上全面解決由於網路頻寬小、使用者訪問量大、網點分佈不均等原因,提高使用者訪問網站的響應速度。
Cache層的技術,消除資料峰值訪問造成的結點裝置阻塞。Cache伺服器具有快取功能,所以大部分網頁物件(Web page object),如html, htm, php等頁面檔案,gif,tif,png,bmp等圖片檔案,以及其他格式的檔案,在有效期(TTL)內,對於重複的訪問,不必從原始網站重新傳送檔案實體, 只需通過簡單的認證(Freshness Validation)- 傳送幾十位元組的Header,即可將本地的副本直接傳送給訪問者。由於快取伺服器通常部署在靠近使用者端,所以能獲得近似區域網的響應速度,並有效減少廣域頻寬的消耗。不僅能提高響應速度,節約頻寬,對於加速Web伺服器,有效減輕源伺服器的負載是非常有效的。

為什麼要使用CDN

在不同地域的使用者訪問網站的響應速度存在差異,為了提高使用者訪問的響應速度、優化現有Internet中資訊的流動,需要在使用者和伺服器間加入中間層CDN. 使使用者能以最快的速度,從最接近使用者的地方獲得所需的資訊,徹底解決網路擁塞,提高響應速度,是目前大型網站使用的流行的應用方案.

CDN加速實驗操作

實驗環境

這個實驗我們要用到兩臺虛擬機器,一臺當作源伺服器,一臺當作CDN代理伺服器
server1(172.25.66.11):源伺服器
我們在源伺服器中下載httpd服務
server2(172.25.66.12):CDN代理伺服器
我們在CDN代理伺服器中下載squid軟體(yum install squid -y)並開啟服務(systemctl start squid),什麼是squid軟體呢?
Squid是一個高效能的代理快取伺服器,Squid支援FTP、gopher、HTTPS和HTTP協議。和一般的代理快取軟體不同,Squid用一個單獨的、非模組化的、I/O驅動的程序來處理所有的客戶端請求。

實驗操作

1:在server2中
vim /etc/squid/squid.conf
將56行的http_access deny all改為http_access allow all
第59行:http_port 80 vhost vport
第60行新增:cache_peer 172.25.66.11(源伺服器IP) parent 80 0 proxy-only
在這裡插入圖片描述
http_access:允許HTTP訪問(黑白名單)
cache_peer 設定允許更新快取的主機
http_port 指定Squid監聽瀏覽器客戶請求的埠號。

測試

我們開啟瀏覽器輸入CDN代理伺服器(server2)的IP地址
因為我在之前的實驗中將server1的apache的預設釋出介面設定成了PHP的介面,所以輸入代理伺服器的IP後,如果看到PHP介面即為實驗成功,我們直接從CDN代理伺服器那裡獲得了源伺服器中的內容
在這裡插入圖片描述