什么是CDN?
CDN的模式有點像發傳單,假如讓你一個人去發一座城市的傳單你肯定很吃力也很費時,如果是同一時間發更是分身乏術,這時你就可以花點錢雇傭好幾個發傳單的人,一個人負責一個片區,這樣傳單就能同步快速的分發下去。
CDN全稱是Content Delivery Network或者Content Distribution Network,也就是我們常說的內容分發網絡。沒有CDN的內容只能從原始的服務器位置提供,這樣就會使用服務器更多的處理能力和帶寬,需要更長的時間才能到達訪問用戶哪里,延遲太大、加載慢就會導致用戶體驗不佳。帶有CDN的內容是由最近的CDN緩存服務器提供內容的,并不需要從原始的服務器位置獲得,而是根據訪客的地理位置和服務器的性能來提供CDN緩存服務器分發內容,這樣就可以減少源服務器的負載,并且可以快速的給訪客提供內容,不管在地球上的哪個角落體驗如絲般順滑。CDN緩存服務器會復制源服務器的內容,當某個緩存服務器出現故障的時候,訪客就會訪問臨近的緩存服務器。所以CDN可以實現100%快速穩定的交付,交付的內容涵蓋了網站、視頻、游戲甚至于軟件更新等等。通過CDN進行內容分發可以承載的訪客數量要比單一的服務器多得多,CDN總承載量也比單一骨干網絡的最大帶寬還要大。CDN緩存服務器之間也會動態地相互傳輸內容,對用戶的訪問行為進行優化,這樣就可以減少內容供應者的帶寬成本,提高系統的穩定性,加速訪問速度。CDN還可以幫助我們保護源服務器免遭一些常見的惡意網絡攻擊,比如DDOS攻擊。CDN的工作原理CDN的緩存加速資源實際上是跟域名捆綁在一起的,當終端的用戶向服務器發出請求后,首先會向本地的DNS發起域名解析的請求,本地的DNS如果有相關IP地址記錄就會直接返回給終端的用戶,沒有則會向DNS查詢。域名的CNAME指向的是CDN所在的IP地址則會進入CDN提供商的DNS調度系統,這時就能控制訪問哪個IP地址的緩存服務器了。CDN出現的歷史背景在上世紀90年代互聯網的接入方式主要是電話線ADSL撥號上網,帶寬低,網民也少,互聯網的主要瓶頸是在用戶接入帶寬這最后的一公里,而并沒有給提供內容的服務器、骨干傳輸網絡帶來什么壓力。隨著互聯網技術的不斷發展,以及網民數量的急劇增加,給提供內容的服務器和傳輸骨干網絡帶來了越來越大的壓力,互聯網的瓶頸就變成了骨干傳輸網絡和服務器,可以想象這會嚴重的阻礙互聯網的發展。麻省理工的教授Tim Berners-Lee預見了未來互聯網的這種挑戰,于是就提出了要發明一種全新從根本上解決互聯網無擁堵的分發這一個學術難題,這樣就催生出了CDN,誕生了鼎鼎大名的CDN服務公司Akamai。綜上所述CDN內容分發技術確實可以解決當下互聯網擁堵的難題,并且可以實現跨省市、跨國快速訪問的需求。CDN也一直在發展,比如迅雷、優酷等就是通過P2P CDN讓用戶自愿以閑置的電腦資源或專用設備利用閑置的上行帶寬來充當CDN緩存加速,用戶換取的則是積分。以上個人淺見,歡迎批評指正。認同我的看法,請點個贊再走,感謝!喜歡我的,請關注我,再次感謝!