最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

知識分享!前端必需了解的CDN知識

2021-01-05 14:34 作者:光耀三十洲  | 我要投稿

CDN的全稱是Content Delivery Network,即內(nèi)容分發(fā)網(wǎng)絡。由于CDN是為加快網(wǎng)絡訪問速度而被優(yōu)化的網(wǎng)絡覆蓋層,因此被形象地稱為“網(wǎng)絡加速器”。

CDN可以加快用戶訪問網(wǎng)絡資源的速度和穩(wěn)定性,減輕源服務器的訪問壓力。

一、CDN簡介

主要思路: 盡可能避開互聯(lián)網(wǎng)上有可能影響數(shù)據(jù)傳輸速度和穩(wěn)定性的瓶頸和環(huán)節(jié),使內(nèi)容傳輸?shù)母?、更穩(wěn)定。

實現(xiàn)方法: 通過在網(wǎng)絡各處放置節(jié)點服務器所構(gòu)成的在現(xiàn)有的互聯(lián)網(wǎng)基礎之上的一層智能虛擬網(wǎng)絡,CDN系統(tǒng)能夠?qū)崟r地根據(jù)網(wǎng)絡流量和各節(jié)點的連接和負載狀況以及到用戶的距離響應時間等綜合信息將用戶的請求重新導向離用戶最近的服務節(jié)點上,加快訪問速度。

目的: 使用戶可就近取得所需內(nèi)容,解決Internet網(wǎng)絡擁擠的狀況,提高用戶訪問網(wǎng)站的響應速度。

優(yōu)勢:

  1. CDN節(jié)點解決了跨運營商和跨地域訪問的問題,訪問延時大大降低;

  2. 大部分請求在CDN邊緣節(jié)點完成,CDN起到了分流作用,減輕了源站的負載。

二、CDN基本工作流程

首先是不使用CDN的情況下的流程:

  1. 用戶在自己的瀏覽器中輸入要訪問的網(wǎng)站域名。

  2. 瀏覽器向 本地DNS服務器 請求對該域名的解析。

  3. 本地DNS服務器中如果緩存有這個域名的解析結(jié)果,則直接響應用戶的解析請求。

  4. 本地DNS服務器中如果沒有關于這個域名的解析結(jié)果的緩存,則以遞歸方式向整個DNS系統(tǒng)請求解析,獲得應答后將結(jié)果反饋給瀏覽器。

  5. 瀏覽器得到域名解析結(jié)果,就是該域名相應的服務設備的 IP地址 。

  6. 瀏覽器向服務器請求內(nèi)容。

  7. 服務器將用戶請求內(nèi)容傳送給瀏覽器。

使用了CDN時,DNS 服務器根據(jù)用戶 IP 地址,將域名解析成相應節(jié)點的緩存服務器IP地址,實現(xiàn)用戶就近訪問。使用 CDN 服務的網(wǎng)站,只需將其域名解析權(quán)交給 CDN 的全局負載均衡(GSLB)設備,將需要分發(fā)的內(nèi)容注入 CDN,就可以實現(xiàn)內(nèi)容加速了。

  1. 當用戶點擊網(wǎng)站頁面上的內(nèi)容URL,經(jīng)過本地DNS系統(tǒng)解析,DNS 系統(tǒng)會最終將域名的解析權(quán)交給 CNAME 指向的 CDN 專用 DNS 服務器。

  2. CDN 的 DNS 服務器將 CDN 的全局負載均衡設備 IP 地址返回用戶。

  3. 用戶向 CDN 的全局負載均衡設備發(fā)起內(nèi)容 URL 訪問請求。

  4. CDN 全局負載均衡設備根據(jù)用戶 IP 地址,以及用戶請求的內(nèi)容URL,選擇一臺用戶所屬區(qū)域的區(qū)域負載均衡設備,告訴用戶向這臺設備發(fā)起請求。

  5. 基于以下這些條件的綜合分析之后,區(qū)域負載均衡設備會向全局負載均衡設備返回一臺緩存服務器的IP地址:

    • 根據(jù)用戶 IP 地址,判斷哪一臺服務器距用戶最近;

    • 根據(jù)用戶所請求的 URL 中攜帶的內(nèi)容名稱,判斷哪一臺服務器上有用戶所需內(nèi)容;

    • 查詢各個服務器當前的負載情況,判斷哪一臺服務器尚有服務能力。

  6. 全局負載均衡設備把服務器的 IP 地址返回給用戶。

  7. 用戶向緩存服務器發(fā)起請求,緩存服務器響應用戶請求,將用戶所需內(nèi)容傳送到用戶終端。如果這臺緩存服務器上并沒有用戶想要的內(nèi)容,而區(qū)域均衡設備依然將它分配給了用戶,那么這臺服務器就要向它的上一級緩存服務器請求內(nèi)容,直至追溯到網(wǎng)站的源服務器將內(nèi)容拉到本地。

三、CDN的作用

CDN最常用的功能當然是加速,但還有一些其他功能。

1. 加速訪問

CDN可以使用戶就近獲取所需內(nèi)容,降低網(wǎng)絡擁塞,提高用戶訪問響應速度和命中率。

還提供服務器端加速,解決由于用戶訪問量大造成的服務器過載問題;

2. 實現(xiàn)跨運營商、跨地域的全網(wǎng)覆蓋

互聯(lián)不互通、區(qū)域ISP地域局限、出口帶寬受限制等種種因素都造成了網(wǎng)站的區(qū)域性無法訪問。

CDN加速可以覆蓋全球的線路,通過和運營商合作,部署IDC資源,在全國骨干節(jié)點商,合理部署CDN邊緣分發(fā)存儲節(jié)點,充分利用帶寬資源,平衡源站流量。

3. 保障你的網(wǎng)站安全

CDN的負載均衡和分布式存儲技術,可以加強網(wǎng)站的可靠性,相當無無形中給你的網(wǎng)站添加了一把保護傘,應對絕大部分的互聯(lián)網(wǎng)攻擊事件。防攻擊系統(tǒng)也能避免網(wǎng)站遭到惡意攻擊。

4. 異地備援

當某個服務器發(fā)生意外故障時,系統(tǒng)將會調(diào)用其他臨近的健康服務器節(jié)點進行服務,進而提供接近100%的可靠性,這就讓你的網(wǎng)站可以做到永不宕機。

5. 節(jié)約成本

能克服網(wǎng)站分布不均的問題,投入使用CDN加速可以實現(xiàn)網(wǎng)站的全國鋪設,你根據(jù)不用考慮購買服務器與后續(xù)的托管運維,服務器之間鏡像同步,也不用為了管理維護技術人員而煩惱,并且能降低網(wǎng)站自身建設和維護成本。

6. 讓你更專注業(yè)務本身

CDN加速廠商一般都會提供一站式服務,業(yè)務不僅限于CDN,還有配套的云存儲、大數(shù)據(jù)服務、視頻云服務等,而且一般會提供7x24運維監(jiān)控支持,保證網(wǎng)絡隨時暢通,你可以放心使用。并且將更多的精力投入到發(fā)展自身的核心業(yè)務之上。

四、CDN工作原理

CDN的基本原理是廣泛采用各種緩存服務器,將這些緩存服務器分布到用戶訪問相對集中的地區(qū)或網(wǎng)絡中,在用戶訪問網(wǎng)站時,利用全局負載技術將用戶的訪問指向距離最近的工作正常的緩存服務器上,由緩存服務器直接響應用戶請求。

1. 用戶訪問cdn資源的過程

  1. 用戶向瀏覽器輸入www.web.com這個域名,瀏覽器第一次發(fā)現(xiàn)本地沒有DNS緩存,則向網(wǎng)站的DNS服務器請求;

  2. 網(wǎng)站的DNS域名解析器設置了CNAME,指向了www.web.51cdn.com,請求指向了CDN網(wǎng)絡中的智能DNS負載均衡系統(tǒng);

  3. 智能DNS負載均衡系統(tǒng)解析域名,把對用戶響應速度最快的IP節(jié)點(CDN服務器)返回給用戶;

  4. 用戶向該IP節(jié)點(CDN服務器)發(fā)出請求;

  5. 由于是第一次訪問,CDN服務器會向原web站點請求,并緩存內(nèi)容;

  6. 請求結(jié)果發(fā)給用戶。

2. cdn主要特點

  1. 本地Cache加速提高了企業(yè)站點(尤其含有大量圖片和靜態(tài)頁面站點)的訪問速度,并大大提高以上性質(zhì)站點的穩(wěn)定性

  2. 鏡像服務消除了不同運營商之間互聯(lián)的瓶頸造成的影響,實現(xiàn)了跨運營商的網(wǎng)絡加速,保證不同網(wǎng)絡中的用戶都能得到良好的訪問質(zhì)量。

  3. 遠程加速遠程訪問用戶根據(jù)DNS負載均衡技術智能自動選擇Cache服務器,選擇最快的Cache服務器,加快遠程訪問的速度

  4. 帶寬優(yōu)化自動生成服務器的遠程Mirror(鏡像)cache服務器,遠程用戶訪問時從cache服務器上讀取數(shù)據(jù),減少遠程訪問的帶寬、分擔網(wǎng)絡流量、減輕原站點WEB服務器負載等功能。

  5. 集群抗攻擊廣泛分布的CDN節(jié)點加上節(jié)點之間的智能冗余機制,可以有效地預防黑客入侵以及降低各種D.D.o.S攻擊對網(wǎng)站的影響,同時保證較好的服務質(zhì)量 。

五、CDN對網(wǎng)絡的優(yōu)化:

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

  2. 緩解甚至消除了不同運營商之間互聯(lián)的瓶頸造成的影響

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

  4. 緩解了骨干網(wǎng)的壓力

  5. 優(yōu)化了網(wǎng)上熱點內(nèi)容的分布

第一公里是指萬維網(wǎng)流量向用戶傳送的第一個出口,是網(wǎng)站服務器接入互聯(lián)網(wǎng)的鏈路所能提供的帶寬。 這個帶寬決定了一個 網(wǎng)站能為用戶提供的訪問速度和并發(fā)訪問量。如果業(yè)務繁忙,用戶的訪問數(shù)越多,擁塞越嚴重,網(wǎng)站會在最需要向用戶提供服務時失去用戶。

中間一公里代表互聯(lián)網(wǎng)中節(jié)點與節(jié)點之間的傳輸網(wǎng)絡。

最后一公里萬維網(wǎng)流量向用戶傳送的最后一段接入鏈路。

六、CDN的應用場景

1. 網(wǎng)站站點/應用加速

站點或者應用中大量靜態(tài)資源的加速分發(fā),建議將站點內(nèi)容進行動靜分離,動態(tài)文件可以結(jié)合云服務器ECS,靜態(tài)資源如各類型圖片、html、css、js文件等,建議結(jié)合 對象存儲OSS 存儲海量靜態(tài)資源,可以有效加速內(nèi)容加載速度,輕松搞定網(wǎng)站圖片、短視頻等內(nèi)容分發(fā)

2. 視音頻點播/大文件下載分發(fā)加速

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

3. 視頻直播加速(內(nèi)測中)

視頻流媒體直播服務,支持媒資存儲、切片轉(zhuǎn)碼、訪問鑒權(quán)、內(nèi)容分發(fā)加速一體化解決方案。結(jié)合彈性伸縮服務,及時調(diào)整服務器帶寬,應對突發(fā)訪問流量;結(jié)合媒體轉(zhuǎn)碼服務,享受高速穩(wěn)定的并行轉(zhuǎn)碼,且任務規(guī)模無縫擴展。目前CDN直播加速已服務內(nèi)部用戶測試并優(yōu)化,即將上線

4. 移動應用加速

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

七、CDN緩存

緩存是空間換時間的思路,通過使用多余的空間,換來更快的訪問速度。

  • 不使用cdn緩存時

所有的用戶都直接訪問源服務器

  • 使用cdn緩存時

客戶端瀏覽器先檢查是否有本地緩存是否過期,如果過期,則向CDN邊緣節(jié)點發(fā)起請求,CDN邊緣節(jié)點會檢測用戶請求數(shù)據(jù)的緩存是否過期,如果cdn數(shù)據(jù)沒有過期,則直接響應用戶請求,此時一個完成http請求結(jié)束;如果cdn數(shù)據(jù)已經(jīng)過期,那么CDN還需要向源站發(fā)出回源請求,來拉取最新的數(shù)據(jù)。

緩存優(yōu)點:CDN的分流作用不僅減少了用戶的訪問延時,也減少的源站的負載。

缺點:當網(wǎng)站更新時,如果CDN節(jié)點上數(shù)據(jù)沒有及時更新,即便用戶再瀏覽器使用Ctrl+F5的方式使瀏覽器端的緩存失效,也會因為CDN邊緣節(jié)點沒有同步最新數(shù)據(jù)而導致用戶訪問異常。

八、解決CDN緩存更新的辦法

  1. 資源url參數(shù)加時間戳

url的參數(shù)加上時間戳,每次更新時時間戳也跟隨更新,重新使cdn邊緣節(jié)點同步源服務器最新數(shù)據(jù)。

  1. 調(diào)用cdn服務商提供的刷新緩存接口

CDN邊緣節(jié)點對開發(fā)者是透明的,相比于瀏覽器Ctrl+F5的強制刷新來使瀏覽器本地緩存失效,開發(fā)者可以通過CDN服務商提供的“刷新緩存”接口來達到清理CDN邊緣節(jié)點緩存的目的。

這樣開發(fā)者在更新數(shù)據(jù)后,可以使用“刷新緩存”功能來強制CDN節(jié)點上的數(shù)據(jù)緩存過期,保證客戶端在訪問時,拉取到最新的數(shù)據(jù)。

七、cdn的組成

1. 部署架構(gòu)

CDN 系統(tǒng)設計的首要目標是盡量減少用戶的訪問響應時間,為達到這一目標,CDN 系統(tǒng)應該盡量將用戶所需要的內(nèi)容存放在距離用戶最近的位置。也就是說,負責為用戶提供內(nèi)容服務的 Cache 設備應部署在物理上的網(wǎng)絡邊緣位置,我們稱這一層為CDN邊緣層。CDN 系統(tǒng)中負責全局性管理和控制的設備組成中心層,中心層同時保存著最多的內(nèi)容副本,當邊緣層設備未命中時,會向中心層請求,如果在中心層仍未命中,則需要中心層向源站回源。

不同CDN系統(tǒng)設計之間存在差異,中心層可能具備用戶服務能力,也可能不直接提供服務,只向下級節(jié)點提供內(nèi)容。如果CDN網(wǎng)絡規(guī)模較大,邊緣層設備直接向中心層請求內(nèi)容或服務會造成中心層設備壓力過大,就要考慮在邊緣層和中心層之間部署一個區(qū)域?qū)?/code>,負責一個區(qū)域的管理和控制,也保存部分內(nèi)容副本供邊緣層訪問。

如圖是一個典型的CDN系統(tǒng)三級部署示意圖:

2. 設備組成

CDN網(wǎng)絡中包含的功能實體主要由以下幾個部分組成:

  • 內(nèi)容緩存設備

  • 內(nèi)容交換機

  • 內(nèi)容路由器

  • CDN內(nèi)容管理系統(tǒng)

1. 內(nèi)容緩存設備

內(nèi)容緩存為CDN網(wǎng)絡節(jié)點,位于用戶接入點,是面向最終用戶的內(nèi)容提供設備,可緩存靜態(tài)Web內(nèi)容和流媒體內(nèi)容,實現(xiàn)內(nèi)容的邊緣傳播和存儲,以便用戶的就近訪問。

2. 內(nèi)容交換機

內(nèi)容交換機處于用戶接入集中點,可以均衡單點多個內(nèi)容緩存設備的負載,并對內(nèi)容進行緩存負載平衡及訪問控制。

3. 內(nèi)容路由器

內(nèi)容路由器負責將用戶的請求調(diào)度到適當?shù)脑O備上。

內(nèi)容路由通常通過負載均衡系統(tǒng)來實現(xiàn),動態(tài)均衡各個內(nèi)容緩存站點的載荷分配,為用戶的請求選擇最佳的訪問站點,同時提高網(wǎng)站的可用性。

內(nèi)容路由器可根據(jù)多種因素制定路由,包括站點與用戶的臨近度、內(nèi)容的可用性、網(wǎng)絡負載、設備狀況等。

負載均衡系統(tǒng)是整個CDN的核心。負載均衡的準確性和效率直接決定了整個CDN的效率和性能。

4. 內(nèi)容管理系統(tǒng)

內(nèi)容管理系統(tǒng)負責整個CDN的管理,是可選部件,作用是進行內(nèi)容管理,如內(nèi)容的注入和發(fā)布、內(nèi)容的分發(fā)、內(nèi)容的審核、內(nèi)容的服務等。


了解更多,請點擊:https://www.bilibili.com/video/BV1NK4y1j76E



作者:alanyf
鏈接:https://juejin.cn/post/6913704568325046279
來源:掘金
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請注明出處。


知識分享!前端必需了解的CDN知識的評論 (共 條)

分享到微博請遵守國家法律
资阳市| 黎城县| 肇源县| 资源县| 夏河县| 东海县| 黎城县| 临沂市| 肃宁县| 承德县| 九龙城区| 新乡县| 西吉县| 二手房| 读书| 隆尧县| 普格县| 郓城县| 河东区| 积石山| 靖安县| 南平市| 永春县| 绵阳市| 离岛区| 封丘县| 平顶山市| 元谋县| 青河县| 甘谷县| 元朗区| 满城县| 佳木斯市| 宜黄县| 马公市| 稷山县| 偃师市| 万安县| 彰化市| 安乡县| 江北区|