日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

5分钟了解CDN 加速原理 | +新书推荐

發布時間:2024/4/11 编程问答 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 5分钟了解CDN 加速原理 | +新书推荐 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

點擊上方“朱小廝的博客”,選擇“設為星標”

后臺回復"書",獲取

后臺回復“k8s”,可領取k8s資料

來源:r6d.cn/YX4Y

一、什么是 CDN

CDN 的全稱是(Content Delivery Network),即內容分發網絡。其目的是通過在現有的Internet中增加一層新的CACHE(緩存)層,將網站的內容發布到最接近用戶的網絡”邊緣“的節點,使用戶可以就近取得所需的內容,提高用戶訪問網站的響應速度。從技術上全面解決由于網絡帶寬小、用戶訪問量大、網點分布不均等原因,提高用戶訪問網站的響應速度。

簡單的說,CDN 的工作原理就是將您源站的資源緩存到位于全球各地的 CDN 節點上,用戶請求資源時,就近返回節點上緩存的資源,而不需要每個用戶的請求都回您的源站獲取,避免網絡擁塞、緩解源站壓力,保證用戶訪問資源的速度和體驗。

CDN 對網絡的優化作用主要體現在如下幾個方面

  • 解決服務器端的“第一公里”問題

  • 緩解甚至消除了不同運營商之間互聯的瓶頸造成的影響

  • 減輕了各省的出口帶寬壓力

  • 緩解了骨干網的壓力

  • 優化了網上熱點內容的分布


二、CDN工作原理

傳統訪問過程

傳統訪問過程

由上圖可見,用戶訪問未使用CDN緩存網站的過程為:

  • 用戶輸入訪問的域名,操作系統向 LocalDns 查詢域名的 ip 地址

  • LocalDns向 ROOT DNS 查詢域名的授權服務器(這里假設LocalDns緩存過期)

  • ROOT DNS將域名授權 dns記錄回應給 LocalDns

  • LocalDns 得到域名的授權 dns 記錄后,繼續向域名授權 dns 查詢域名的 ip 地址

  • 域名授權 dns 查詢域名記錄后,回應給 LocalDns

  • LocalDns 將得到的域名ip地址,回應給 用戶端

  • 用戶得到域名 ip 地址后,訪問站點服務器

  • 站點服務器應答請求,將內容返回給客戶端


  • CDN 訪問過程

    通過上圖,我們可以了解到,使用了CDN緩存后的網站的訪問過程變為:

  • 用戶輸入訪問的域名,操作系統向 LocalDns 查詢域名的ip地址.

  • LocalDns向 ROOT DNS 查詢域名的授權服務器(這里假設LocalDns緩存過期)

  • ROOT DNS將域名授權dns記錄回應給 LocalDns

  • LocalDns得到域名的授權dns記錄后,繼續向域名授權dns查詢域名的ip地址

  • 域名授權dns 查詢域名記錄后(一般是CNAME),回應給 LocalDns

  • LocalDns 得到域名記錄后,向智能調度DNS查詢域名的ip地址

  • 智能調度DNS 根據一定的算法和策略(比如靜態拓撲,容量等),將最適合的CDN節點ip地址回應給 LocalDns

  • LocalDns 將得到的域名ip地址,回應給 用戶端

  • 用戶得到域名ip地址后,訪問站點服務器

  • CDN 節點服務器應答請求,將內容返回給客戶端。(緩存服務器一方面在本地進行保存,以備以后使用,二方面把獲取的數據返回給客戶端,完成數據服務過程)

  • 通過以上的分析我們可以得到,為了實現對普通用戶透明(使用緩存后用戶客戶端無需進行任何設置)訪問,需要使用 DNS(域名解析)來引導用戶來訪問 Cache 服務器,以實現透明的加速服務。由于用戶訪問網站的第一步就是域名解析,所以通過修改dns來引導用戶訪問是最簡單有效的方式。

    CDN網絡的組成要素

    對于普通的 Internet 用戶,每個 CDN 節點就相當于一個放置在它周圍的網站服務器。

    通過對 DNS 的接管,用戶的請求被透明地指向離他最近的節點,節點中 CDN 服務器會像網站的原始服務器一樣,響應用戶的請求。?由于它離用戶更近,因而響應時間必然更快。

    從上面圖中虛線圈起來的那塊,就是 CDN 層,這層是位于用戶端和站點服務器之間。

    智能調度 DNS(比如 f5 的 3DNS)

    • 智能調度DNS是CDN服務中的關鍵系統.當用戶訪問加入CDN服務的網站時,域名解析請求將最終由 “智能調度DNS”負責處理。

    • 它通過一組預先定義好的策略,將當時最接近用戶的節點地址提供給用戶,使用戶可以得到快速的服務。

    • 同時它需要與分布在各地的CDN節點保持通信,跟蹤各節點的健康狀態、容量等信息,確保將用戶的請求分配到就近可用的節點上.

    緩存功能服務

    • 負載均衡設備(如lvs,F5的BIG/IP)

    • 內容Cache服務器(如squid)

    • 共享存儲


    三、名詞解釋

    CNAME記錄(CNAME record)

    CNAME即別名( Canonical Name );可以用來把一個域名解析到另一個域名,當 DNS 系統在查詢 CNAME 左面的名稱的時候,都會轉向 CNAME 右面的名稱再進行查詢,一直追蹤到最后的 PTR 或 A 名稱,成功查詢后才會做出回應,否則失敗。

    例如,你有一臺服務器上存放了很多資料,你使用docs.example.com去訪問這些資源,但又希望通過documents.example.com也能訪問到這些資源,那么你就可以在您的DNS解析服務商添加一條CNAME記錄,將documents.example.com指向docs.example.com,添加該條CNAME記錄后,所有訪問documents.example.com的請求都會被轉到docs.example.com,獲得相同的內容。

    CNAME域名

    接入CDN時,在CDN提供商控制臺添加完加速域名后,您會得到一個CDN給您分配的CNAME域名, 您需要在您的DNS解析服務商添加CNAME記錄,將自己的加速域名指向這個CNAME域名,這樣該域名所有的請求才會都將轉向CDN的節點,達到加速效果。


    DNS

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

    常見的DNS解析服務商有:阿里云解析,萬網解析,DNSPod,新網解析,Route53(AWS),Dyn,Cloudflare等。

    回源 host

    回源host:回源 host 決定回源請求訪問到源站上的具體某個站點。

    例子1:源站是域名源站為www.a.com,回源host為www.b.com,那么實際回源是請求到`www.a.com解析到的IP,對應的主機上的站點www.b.com

    例子2:源站是IP源站為1.1.1.1, 回源host為www.b.com,那么實際回源的是1.1.1.1對應的主機上的站點www.b.com


    協議回源

    指回源時使用的協議和客戶端訪問資源時的協議保持一致,即如果客戶端使用 HTTPS 方式請求資源,當CDN節點上未緩存該資源時,節點會使用相同的 HTTPS 方式回源獲取資源;同理如果客戶端使用 HTTP 協議的請求,CDN節點回源時也使用HTTP協議。

    推薦書籍——《Java性能優化實踐》

    Java 性能優化是一個老生常談的話題,尤其是在“糙快猛”的互聯網開發模式大行其道的今天,隨著系統訪問量的日益增加和代碼的臃腫,各種性能問題開始紛至沓來。本書從各個角度,由表及里地為讀者透析 Java 性能優化的本質,相信大家在讀完本書之后會對此有一個更深層次的認知。

    總結

    以上是生活随笔為你收集整理的5分钟了解CDN 加速原理 | +新书推荐的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。