1. 程式人生 > >使用快取加速之後的網站訪問過程變化

使用快取加速之後的網站訪問過程變化

在描述CDN的實現原理之前,讓我們先看傳統的未加快取服務的訪問過程,以便了解CDN快取訪問方式與未加快取訪問方式的差別:

  使用者訪問未使用CDN快取網站的過程為:
  1)、使用者向瀏覽器提供要訪問的域名;
  2)、瀏覽器呼叫域名解析函式庫對域名進行解析,以得到此域名對應的IP地址;
  3)、瀏覽器使用所得到的IP地址,域名的服務主機發出資料訪問請求;
  4)、瀏覽器根據域名主機返回的資料顯示網頁的內容。
  通過以上四個步驟,瀏覽器完成從使用者處接收使用者要訪問的域名到從域名服務主機處獲取資料的整個過程。CDN網路是在使用者和伺服器之間增加Cache層,如何將使用者的請求引導到Cache上獲得源伺服器的資料,主要是通過接管DNS實現,下面讓我們看看訪問使用CDN快取後的網站的過程:

使用了CDN快取後的網站的訪問過程變為:
  1)、使用者向瀏覽器提供要訪問的域名;
  2)、瀏覽器呼叫域名解析庫對域名進行解析,由於CDN對域名解析過程進行了調整,所以解析函式庫一般得到的是該域名對應的CNAME記錄,為了得到實際IP地址,瀏覽器需要再次對獲得的CNAME域名進行解析以得到實際的IP地址;在此過程中,使用的全域性負載均衡DNS解析,如根據地理位置資訊解析對應的IP地址,使得使用者能就近訪問。
  3)、此次解析得到CDN快取伺服器的IP地址,瀏覽器在得到實際的IP地址以後,向快取伺服器發出訪問請求;
  4)、快取伺服器根據瀏覽器提供的要訪問的域名,通過Cache內部專用DNS解析得到此域名的實際IP地址,再由快取伺服器向此實際IP地址提交訪問請求;
  5)、快取伺服器從實際IP地址得得到內容以後,一方面在本地進行儲存,以備以後使用,二方面把獲取的資料返回給客戶端,完成資料服務過程;
  6)、客戶端得到由快取伺服器返回的資料以後顯示出來並完成整個瀏覽的資料請求過程。
通過以上的分析我們可以得到,為了實現既要對普通使用者透明(即加入快取以後使用者客戶端無需進行任何設定,直接使用被加速網站原有的域名即可訪問),又要在為指定的網站提供CDN網站加速服務的同時降低對ICP的影響,只要修改整個訪問過程中的域名解析部分,以實現透明的加速服務。