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部署在各個物理位置的服務器進行全網分發,就可以實現跨運營商、跨地域的用戶覆蓋。由於CDN將內容推送到網絡邊緣,大量的用戶訪問被分散在網絡邊緣,不再構成網站出口、互聯互通點的資源擠佔,也不再需要跨越長距離IP路由了
傳統的B/S架構:
  B/S架構,即Browser-Server(瀏覽器 服務器)架構,是對傳統C/S架構的一種變化或者改進架構。在這種架構下,用戶只需使用通用瀏覽器,主要業務邏輯在服務器端實現。B/S架構,主要是利用了不斷成熟的WWW瀏覽器技術,結合瀏覽器的多種Script語言(VBScript、JavaScript等)和ActiveX等技術,在通用瀏覽器上實現了C/S架構下需要複雜的軟件才能實現的強大功能。

①用戶在自己的瀏覽器中輸入要訪問的網站域名。
  ②瀏覽器向本地DNS服務器請求對該域名的解析。
  ③本地DNS服務器中如果緩存有這個域名的解析結果,則直接響應用戶的解析請求。
  ④本地DNS服務器中如果沒有關於這個域名的解析結果的緩存,則以遞歸方式向整個DNS系統請求解析,獲得應答後將結果反饋給瀏覽器。
  ⑤瀏覽器得到域名解析結果,就是該域名相應的服務設備的IP地址。
  ⑥瀏覽器向服務器請求內容。
  ⑦服務器將用戶請求內容傳送給瀏覽器
————————————————
加入cdn後:
  在網站和用戶之間加入CDN以後,用戶不會有任何與原來不同的感覺。最簡單的CDN網絡有一個DNS服務器和幾臺緩存服務器就可以運行了。一個典型的CDN用戶訪問調度流程

①當用戶點擊網站頁面上的內容URL,經過本地DNS系統解析,DNS系統會最終將域名的解析權交給CNAME指向的CDN專用DNS服務器。
  ②CDN的DNS服務器將CDN的全局負載均衡設備IP地址返回用戶。
  ③用戶向CDN的全局負載均衡設備發起內容URL訪問請求。
  ④CDN全局負載均衡設備根據用戶IP地址,以及用戶請求的內容URL,選擇一臺用戶所屬區域的區域負載均衡設備,告訴用戶向這臺設備發起請求。
  ⑤區域負載均衡設備會爲用戶選擇一臺合適的緩存服務器提供服務,選擇的依據包括:根據用戶IP地址,判斷哪一臺服務器距用戶最近;根據用戶所請求的URL中攜帶的內容名稱,判斷哪一臺服務器上有用戶所需內容;查詢各個服務器當前的負載情況,判斷哪一臺服務器尚有服務能力。基於以上這些條件的綜合分析之後,區域負載均衡設備會向全局負載均衡設備返回一臺緩存服務器的IP地址。
  ⑥全局負載均衡設備把服務器的IP地址返回給用戶。
  ⑦用戶向緩存服務器發起請求,緩存服務器響應用戶請求,將用戶所需內容傳送到用戶終端。如果這臺緩存服務器上並沒有用戶想要的內容,而區域均衡設備依然將它分配給了用戶,那麼這臺服務器就要向它的上一級緩存服務器請求內容,直至追溯到網站的源服務器將內容拉到本地。

  DNS服務器根據用戶IP地址,將域名解析成相應節點的緩存服務器IP地址,實現用戶就近訪問。使用CDN服務的網站,只需將其域名解析權交給CDN的GSLB設備,將需要分發的內容注入CDN,就可以實現內容加速了。
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章