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.shtmlhtml

相關文章
相關標籤/搜索