CDN對於動態加速是否有效


CDN對於動態加速是否有效的問題。關於這個問題,一直存在一些分歧,部分人認為有效,部分人認為無效,主要是CDN技術也在更新,而且是比較低調的進行着更新,所以並不是所有人都清楚CDN對動態加速的效果。其實如果真的追究到第一代的CDN技術,那確實是不支持動態加速的,因為數據庫這種實時更新而且隨時都在更新的東西實在是沒辦法把它緩存到鏡像服務器上,比較專業的數據庫例如MSSQL倒是提供了熱備的異地同步功能,不過實現起來相當復雜,而且使用簡易型數據庫的用戶不在少數,所以緩存技術拿數據庫沒轍,一般在處理碰到動態頁面的時候就把URL直接引回主站,所以加速了跟沒加速一個效果,有時因為URL解析產生的延遲等問題反而還比不加速的情況下要慢;還有一種處理動態頁面的方法,不記得是哪個CDN運營商提出的了,其實就是把動態頁面生成靜態后再利用靜態緩存分發的技術實現加速,不過這個生成靜態的操作是手動的,也就是由用戶來確認生成哪些靜態頁面,然后點擊一個生成的按鈕,就開始進行該操作,而其實還有一些資料提出的CDN加速原理是有點類似IIS加速ASP.NET那樣,也就是把每個被訪問過的動態頁面都自動生成一個靜態頁然后分發出去,這樣下次再有人訪問這個動態頁面時就會先檢查該頁面之前是否被訪問過,如果被訪問過就引到鏡像站點,否則就先由主站生成一個頁面,再分發到鏡像服務器上,當然這種方式存在不少需要解決的問題,例如當主站的某個靜態頁已經生成靜態了,然后主站又產生了一些新的數據,使得這個頁面內容已經產生變化,那么鏡像服務器上的靜態數據如何與主站保持這種高度的實時同步?老實說這個問題非常難解決,於是,部分有實力也就是指有大量帶寬的運營商開始采用帶寬加速的方式實現動態的CDN加速。這個原理是怎么樣的呢?簡單來說就類似用鏡像服務器給訪問者做了一個高速的代理服務器,用過代理服務器的朋友應該知道,假如XX用戶通過代理訪問A站點的某個動態頁面,那么代理服務器會先自己去訪問A站點的這個動態頁面,然后把A站點返回的內容再轉發給XX用戶,這樣不管A站點的數據如何更新,XX用戶每次訪問那個動態頁面都會從代理服務器得到最新的內容,當然,條件就是代理服務器連接A站點的速度跟連接用戶的速度都非常快,這樣才會有加速的效果,所以需要代理服務器有非常好的帶寬,這樣的話,一般的服務商是做不來的,所以大家知道為什么很多CDN服務商對動態內容的加速效果不好了吧,其實就是實力有限,帶寬不足。


最后,還有一個問題是大家經常忽略的,就是CDN的幾種作用。很多人都知道CDN是用來給各地訪問者加速或者說南北互通,但其實CDN都還有一個很重要的作用就是分流減負。試想,一台服務器能夠承受多大的訪問量,能夠支撐多大的帶寬,這些都是非常有限的,而通過CDN系統將這台服務器上面的內容分發到各個節點之后,這些節點其實就為主站服務器承擔了來自當地的訪問量,主站的負荷幾乎都轉移到了各地的鏡像節點上,從而大大提高了網站的負載能力;這樣一來,CDN其實都還起到了防御DDOS的作用,一些針對域名發起的DDOS流量攻擊其實就被轉移到了鏡像節點上面,而鏡像節點的負載能力自然是比較強的,大部分情況下都可以完全吸收DDOS攻擊的壓力,使得攻擊者無功而返。

原文地址:http://idc.cnw.com.cn/CDN/htm2008/20080506_53576.shtml


免責聲明!

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



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