關於CDN

DNS域名解析過程

DNS即Domain Name System,是域名解析服務的意思。它在互聯網的做用是:把域名轉換成爲網絡能夠識別的ip地址。人們習慣記憶域名,但機器間互相只認IP地址,域名與IP地址之間是一一對應的,它們之間的轉換工做稱爲域名解析,域名解析須要由專門的域名解析服務器來完成,整個過程是自動進行的。好比:上網時輸入的www.baidu.com會自動轉換成爲220.181.112.143。css

常見的DNS解析服務商有:阿里雲解析,萬網解析,DNSPod,新網解析,Route53(AWS),Dyn,Cloudflare等。html

傳統方式請求靜態資源

 

1.好比訪問頁面請求瀏覽器

www.toov5.com/23234.jpg緩存

2.服務器

 

傳統方式架構弊端:網絡

1.帶寬傳輸壓力大架構

2.由於全部用戶所有彙集到同一個地區服務器上訪問,沒法保證總體的系統高可用負載均衡

3.由於若是客戶端與服務器端傳輸距離越遠,那麼寬帶傳輸很是耗資源,致使用戶體驗很是差,響應慢。函數

 

 

什麼是CDN

CDN加速意思就是在用戶和咱們的服務器之間加一個緩存機制,動態獲取IP地址根據地理位置,讓用戶到最近的服務器訪問。性能

 

CDN的全稱是Content Delivery Network,即內容分發網絡。

CDN是一組分佈在多個不一樣地理位置的Web服務器,用於更加有效地向用戶發佈內容,在優化性能時,會根據距離的遠近來選擇。

CDN系統能實時地根據網絡流量和各節點的鏈接,負載情況及用戶的距離和響應時間等綜合信息將用戶的請求從新導向離用戶最近的服務節點上,其目的是使用戶能就近地獲取請求數據,解決網絡擁塞,提升訪問速度,解決因爲網絡帶寬小、用戶訪問量大、網點分佈不均等緣由致使的訪問速度慢的問題。

因爲CDN部署在網絡運營商的機房,這些運營商又是終端用戶網絡的提供商,所以用戶請求的第一跳就到達CDN服務器,當CDN服務器中緩存有用戶請求的數據時,就能夠從CDN直接返回給瀏覽器,所以能夠提升訪問速度。

CDN可以緩存JavaScript腳本、CSS樣式表、圖片、圖標、Flash等靜態資源文件(不包括html頁面),這些靜態資源文文件的訪問頻率很高,將其緩存在CDN能夠極大地提升網站的訪問速度,但因爲CDN是部署在網絡運營商的機房,因此在通常的網站中都不多用CDN加速。

CDN內容分發原理

1) 用戶向瀏覽器提供要訪問的域名;

2) 瀏覽器調用域名解析庫對域名進行解析,因爲CDN對域名解析過程進行了調整,因此解析函數庫通常獲得的是該域名對應的

CNAME記錄,爲了獲得實際IP地址,瀏覽器須要再次對得到的CNAME域名進行解析以獲得實際的IP地址;在此過程當中,使用的全局負載均衡DNS解析,如根據地理位置信息解析對應的IP地址,使得用戶能就近訪問;

3) 這次解析獲得CDN緩存服務器的IP地址,瀏覽器在獲得實際的IP地址之後,向緩存服務器發出訪問請求;

4) 緩存服務器根據瀏覽器提供的要訪問的域名,經過Cache內部專用DNS解析獲得此域名的實際IP地址,再由緩存服務器向此實際IP地址提交訪問請求;

5) 緩存服務器從實際IP地址得獲得內容之後,一方面在本地進行保存,以備之後使用,二方面把獲取的數據返回給客戶端,完成數據服務過程;

6) 客戶端獲得由緩存服務器返回的數據之後顯示出來並完成整個瀏覽的數據請求過程。

 

 

CDN目的是爲了減輕客戶端與服務器端寬帶傳輸,CDN緩存靜態資源

CDN獲取客戶端IP地址,實現動態化(DNS負載均衡),根據客戶端的IP地址判斷CDN內容分發服務器距離,讓客戶端從最近的服務器進行訪問。判斷哪臺cdn服務器距離客戶端最近。

 

 

 CDN 部署在全國各個地區

 CDN應用場景: 緩存靜態資源 img css js  

相關文章
相關標籤/搜索