關於CDN對動態網站加速的一些看法


  CDN的全稱是Content Delivery Network,即內容分發網絡。其目的是通過在現有的Internet中增加一層新的網絡架構,將網站的內容發布到最接近用戶的網絡"邊緣",使用戶可以就近取得所需的內容,解決Internet網絡擁擠的狀況,提高用戶訪問網站的響應速度。從技術上全面解決由於網絡帶寬小、用戶訪問量大、網點分布不均等原因所造成的用戶訪問網站響應速度慢的問題。

  CDN技術采取了分布式網絡緩存結構(即國際上流行的web cache技術),通過在現有的Internet中增加一層新的網絡架構,將網站的內容發布到最接近用戶的cache服務器內,通過DNS負載均衡的技術,判斷用戶來源就近訪問cache服務器取得所需的內容,解決Internet網絡擁塞狀況,提高用戶訪問網站的響應速度,如同提供了多個分布在各地的加速器,以達到快速、可冗余的為多個網站加速的目的。

  由於CDN基本的加速手段是“DNS智能選擇最近的鏡像”+“鏡像緩存靜態內容”,所以在傳統的觀點中,CDN只是對靜態頁面加速,對動態頁面沒有效果。

  對於動態網站的加速,網上大部分人都認為“不可能做到”,“加速效果不明顯”,“它怎么能把數據庫進行加速”。現在就我個人對CDN動態加速的了解,進行一一的說明。

  (1)首先對於,大家所致疑的“能不能實現動態數據的加速”這個問題,我的理解如下:首先明確的是,對於大家針對動態代碼和數據庫的安全性考慮,大多數據客戶不會把動態代碼和數據庫的數據讓CDN服務商發布到每個Cache結點上。這一點大家都是這么做。畢竟是一個不能公開的部分。

  如我們在南方電信A點訪問沒有加速前的動態網站B(放置在北方網通機房),慢,打開一個網站需要盡1分鍾以上,ping A,得到的平均時間為:600MS以上ms。而使用CDN動態加速后,我們在A到B之間,插入了一個CDN的cache(C點)。這樣得到的結果是從A到C點的時間很快,大約10ms以內。現在我們看的就是從C點到B的時間。就CDN服務商的說法,一定是小於直接從A到B的時間減少A到C的時間,倒底是不是呢?現在我們分析CDN服務商的布置Cache節點的作用。它們在全國如果布有節點的話。並具有智能DNS系統的話。它們就會在CDN服務提供的cahce結點內部去尋找一條最短的路徑,使從C到B的時間縮短。這就是大家常說的最佳路由。有以上的兩個假設,一般對於動態網站的加速就能夠達到且速度比原來的時間到縮短50%以上。一般的像帝聯,chinacahe都具有智能DNS系統與在全國的布了多的節點。

  (2)對於像一些圖片等靜態數據,仍采用靜態加速的辦法。綜合起來的,可以達到對動態網站的加速效果,這里有一點注意的是,動態網站一般不會對數據庫本身進行加速。這一點大家需要明白。

  因此,動態CDN加速並不是一種虛妄的說法,其效果還是值得肯定,目前市場上也確實有服務商提出這樣的口號,但是我們也要意識到,如果某個動態頁面的大部分內容都是由腳本代碼產生,那么這個頁面使用CDN加速是沒有多大效果的,畢竟這個頁面的主要內容沒辦法被存入鏡像;但是對於圖片較多的動態頁面,例如圖片論壇,我想這種加速還是有意義的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM