什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!

CDN這個詞在我們技術圈中經常聽到,什麼CDN節點呀、CDN加速呀,當同事跟你談到這些話題的時候,是不是大家都只顧着點頭呢?

CDN其實作用很大,我們每天都在享受CDN帶來的福利,只是你感受不到。比如說在線教育誕生之初,線上直播效果其實是非常差的,畫質不清晰也就算了,有時候直接會卡到視頻和聲音不同步,這些難題直接影響到在線教育的日常運作。CDN憑藉低時延的產品特性,讓數據得以即時傳輸,爲師生帶來響應快速、使用流暢的視頻觀看體驗。

電子商務領域,每一次大促的背後都意味着電商交易流量的高峯,要讓電商走得更遠、更順暢,少不了CDN技術的加持。CDN利用充足帶寬資源,做好CDN冗餘儲備,在用戶訪問突增時靈活、快速爲客戶調配資源,避免用戶的“訪問洪峯”影響購物體驗,同時緩解源站壓力,充分保障平臺訪問響應速度以及成功率。

在我們平時日常生活中,大家是不是特別喜歡刷短視頻,比如抖音、快手等,CDN採用網頁靜態資源優化加速分發,縮短網頁響應時間,讓我們刷起視頻來更加流暢。

還有好多的場景都能看到CDN在背後做的重大貢獻,那麼CDN到底是個啥,它到底解決了什麼樣的難題?原理是啥?今天帶你學習一波!

首先要明白什麼是CDN?

CDN英文全稱Content Delivery Network,中文翻譯即爲內容分發網絡。它是建立並覆蓋在承載網之上,由分佈在不同區域的邊緣節點服務器羣組成的分佈式網絡。

CDN應用廣泛,支持多種行業、多種場景內容加速,例如:圖片小文件、大文件下載、視音頻點播、直播流媒體、全站加速、安全加速。

什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!

借用阿里雲官網的例子,來簡單介紹CDN的工作原理。假設通過CDN加速的域名爲www.a.com,接入CDN網絡,開始使用加速服務後,當終端用戶(北京)發起HTTP請求時,處理流程如下:

  1. 當終端用戶(北京)向www.a.com下的指定資源發起請求時,首先向LDNS(本地DNS)發起域名解析請求。
  2. LDNS檢查緩存中是否有www.a.com的IP地址記錄。如果有,則直接返回給終端用戶;如果沒有,則向授權DNS查詢。
  3. 當授權DNS解析www.a.com時,返回域名CNAME www.a.tbcdn.com對應IP地址。
  4. 域名解析請求發送至阿里雲DNS調度系統,併爲請求分配最佳節點IP地址。
  5. LDNS獲取DNS返回的解析IP地址。
  6. 用戶獲取解析IP地址。
  7. 用戶向獲取的IP地址發起對該資源的訪問請求。
  • 如果該IP地址對應的節點已緩存該資源,則會將數據直接返回給用戶,例如,圖中步驟7和8,請求結束。
  • 如果該IP地址對應的節點未緩存該資源,則節點向源站發起對該資源的請求。獲取資源後,結合用戶自定義配置的緩存策略,將資源緩存至節點,例如,圖中的北京節點,並返回給用戶,請求結束。

從這個例子可以瞭解到:

  1. CDN的加速資源是跟域名綁定的。
  2. 通過域名訪問資源,首先是通過DNS分查找離用戶最近的CDN節點(邊緣服務器)的IP
  3. 通過IP訪問實際資源時,如果CDN上並沒有緩存資源,則會到源站請求資源,並緩存到CDN節點上,這樣,用戶下一次訪問時,該CDN節點就會有對應資源的緩存了。

簡單講,CDN就是通過將站點內容發佈至遍佈全球的海量加速節點,使其用戶可就近獲取所需內容。

CDN主要解決這麼些問題:

  • 物理距離遠,多次網絡轉發,延時高不穩定;
  • 所在運營商不同,需運營商之間轉發繞行;
  • 網絡帶寬處理能力有限,海量請求時,響應速度與可用性降低。

什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!

CDN工作原理

CDN的工作原理就是將源站的資源緩存到位於全國各地的CDN節點上,用戶請求資源時,就近返回節點上緩存的資源,而不需要每個用戶的請求都回您的源站獲取,避免網絡擁塞、分擔源站壓力,保證用戶訪問資源的速度和體驗。
什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!

爲什麼要用 CDN?

如果你在經營一家網站,那你應該知道幾點因素是你制勝的關鍵:

  • 內容有吸引力
  • 訪問速度快
  • 支持頻繁的用戶互動
  • 可以在各處瀏覽無障礙

另外,你的網站必須能在複雜的網絡環境下運行,考慮到全球的用戶訪問體驗。你的網站也會隨着使用越來越多的對象(如圖片、幀、CSS及APIs)和形形色色的動作(分享、跟蹤)而系統逐漸龐大。所以,系統變慢帶來用戶的流失。

Google及其它網站的研究表明,一個網站每慢一秒鐘,就會丟失許多訪客,甚至這些訪客永遠不會再次光顧這些網站。可以想像,如果網站是你的盈利渠道或是品牌窗口,那麼網站速度慢將是一個致命的打擊。

這就是你使用CDN的第一個也是最重要的原因:爲了加速網站的訪問

除此之外,CDN還有一些作用:

1. 爲了實現跨運營商、跨地域的全網覆蓋

互聯不互通、區域ISP地域侷限、出口帶寬受限制等種種因素都造成了網站的區域性無法訪問。CDN加速可以覆蓋全球的線路,通過和運營商合作,部署IDC資源,在全國骨幹節點商,合理部署CDN邊緣分發存儲節點,充分利用帶寬資源,平衡源站流量。

2. 爲了保障你的網站安全

CDN的負載均衡和分佈式存儲技術,可以加強網站的可靠性,相當無無形中給你的網站添加了一把保護傘,應對絕大部分的互聯網***事件。防***系統也能避免網站遭到惡意***。

3. 爲了異地備援

當某個服務器發生意外故障時,系統將會調用其他臨近的健康服務器節點進行服務,進而提供接近100%的可靠性,這就讓你的網站可以做到永不宕機。

4. 爲了節約成本投入

使用CDN加速可以實現網站的全國鋪設,你根據不用考慮購買服務器與後續的託管運維,服務器之間鏡像同步,也不用爲了管理維護技術人員而煩惱,節省了人力、精力和財力。

5. 爲了讓你更專注業務本身

CDN加速廠商一般都會提供一站式服務,業務不僅限於CDN,還有配套的雲存儲、大數據服務、視頻雲服務等,而且一般會提供7x24運維監控支持,保證網絡隨時暢通,你可以放心使用。並且將更多的精力投入到發展自身的核心業務之上。

CDN與傳統網站訪問的區別

CDN主要功能是在不同的地點緩存內容,通過負載均衡技術,將用戶的請求定向到最合適的緩存服務器上去獲取內容,比如說,是北京的用戶,我們讓他訪問北京的節點,深圳的用戶,我們讓他訪問深圳的節點。通過就近訪問,加速用戶對網站的訪問。解決Internet網絡擁堵狀況,提高用戶訪問網絡的響應速度。

傳統訪問訪問:

什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!

使用了CDN的網站訪問:

什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!
與傳統訪問方式不同,CDN網絡則是在用戶和服務器之間增加緩存層,將用戶的訪問請求引導到最優的緩存節點而不是服務器源站點,從而加速訪問速度。

完整的CDN工作流程:

什麼是CDN?它解決了什麼難題?5分鐘讓你明明白白!
通過權威DNS服務器來實現最優節點的選擇,通過緩存來減少源站的壓力

CDN的應用場景

1、網站站點/應用加速

站點或者應用中大量靜態資源的加速分發,建議將站點內容進行動靜分離,動態文件可以結合雲服務器ECS,靜態資源如各類型圖片、html、css、js文件等,建議結合 對象存儲OSS 存儲海量靜態資源,可以有效加速內容加載速度,輕鬆搞定網站圖片、短視頻等內容分發。

2、視音頻點播/大文件下載分發加速

支持各類文件的下載、分發,支持在線點播加速業務,如mp4、flv視頻文件或者平均單個文件大小在20M以上,主要的業務場景是視音頻點播、大文件下載(如安裝包下載)等,建議搭配對象存儲OSS使用,可提升回源速度,節約近2/3回源帶寬成本。

3、視頻直播加速

視頻流媒體直播服務,支持媒資存儲、切片轉碼、訪問鑑權、內容分發加速一體化解決方案。結合彈性伸縮服務,及時調整服務器帶寬,應對突發訪問流量;結合媒體轉碼服務,享受高速穩定的並行轉碼,且任務規模無縫擴展。

4、移動應用加速

移動APP更新文件(apk文件)分發,移動APP內圖片、頁面、短視頻、UGC等內容的優化加速分發。提供httpDNS服務,避免DNS劫持並獲得實時精確的DNS解析結果,有效縮短用戶訪問時間,提升用戶體驗。

CDN相關的術語解釋

1、Origin Server源站

做 CDN 之前的客戶真正的服務器。

2、User

訪問者,也就是要訪問網站的網民。

3、Last Mile

最後一公里,也就是網民到他所訪問到的 CDN 服務器之間的路徑。

4、域名

域名是Internet網絡上的一個服務器或一個網絡系統的名字,全世界,沒有重複的域名。

5、CNAME記錄

它是一個別名記錄( Canonical Name );當 DNS 系統在查詢 CNAME 左面的名稱的時候,都會轉向 CNAME 右面的名稱再進行查詢,一直追蹤到最後的 PTR 或 A 名稱,成功查詢後纔會做出迴應,否則失敗。

6、CNAME域名

CDN的域名加速需要用到CNAME記錄,在服務器控制檯配置完成CDN加速後,您會得到一個加速後的域名,稱之爲CNAME域名(該域名一定是*.*http://wljslmz.com), 用戶需要將自己的域名作CNAME指向這個*.*http://wljslmz.com的域名後,域名解析的工作就正式轉向雲服務器,該域名所有的請求都將轉向雲CDN的節點。

7、DNS

DNS即Domain Name System,是域名解析服務的意思。它在互聯網的作用是:把域名轉換成爲網絡可以識別的ip地址。人們習慣記憶域名,但機器間互相只認IP地址,域名與IP地址之間是一一對應的,它們之間的轉換工作稱爲域名解析,域名解析需要由專門的域名解析服務器來完成,整個過程是自動進行的。比如:上網時輸入的百度一下,你就知道會自動轉換成爲220.181.112.143

8、邊緣節點

也稱CDN節點、Cache節點等;是相對於網絡的複雜結構而提出的一個概念,指距離最終用戶接入具有較少的中間環節的網絡節點,對最終接入用戶有較好的響應能力和連接速度。其作用是將訪問量較大的網頁內容和對象保存在服務器前端的專用cache設備上,以此來提高網站訪問的速度和質量。

9、cache

cache高速緩衝存儲器一種特殊的存儲器子系統,其中複製了頻繁使用的數據以利於快速訪問。存儲器的高速緩衝存儲器存儲了頻繁訪問的RAM位置的內容及這些數據項的存儲地址。當處理器引用存儲器中的某地址時,高速緩衝存儲器便檢查是否存有該地址。如果存有該地址,則將數據返回處理器;如果沒有保存該地址,則進行常規的存儲器訪問。因爲高速緩衝存儲器總是比主RAM存儲器速度快,所以當RAM的訪問速度低於微處理器的速度時,常使用高速緩衝存儲器。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章