91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

什么是CDN ?CDN工作原理是什么?

程序員cxuan ? 來源:JavaGuide ? 作者:Guide ? 2022-10-21 15:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

什么是 CDN ?

CDN全稱是 Content Delivery Network/Content Distribution Network,翻譯過的意思是內(nèi)容分發(fā)網(wǎng)絡(luò)。

我們可以將內(nèi)容分發(fā)網(wǎng)絡(luò)拆開來看:

內(nèi)容 :指的是靜態(tài)資源比如圖片、視頻、文檔、JS、CSS、HTML。

分發(fā)網(wǎng)絡(luò) :指的是將這些靜態(tài)資源分發(fā)到位于多個不同的地理位置機房中的服務(wù)器上,這樣,就可以實現(xiàn)靜態(tài)資源的就近訪問比如北京的用戶直接訪問北京機房的數(shù)據(jù)。

所以,簡單來說,CDN 就是將靜態(tài)資源分發(fā)到多個不同的地方以實現(xiàn)就近訪問,進而加快靜態(tài)資源的訪問速度,減輕服務(wù)器以及帶寬的負擔(dān)。

類似于京東建立的龐大的倉儲運輸體系,京東物流在全國擁有非常多的倉庫,倉儲網(wǎng)絡(luò)幾乎覆蓋全國所有區(qū)縣。這樣的話,用戶下單的第一時間,商品就從距離用戶最近的倉庫,直接發(fā)往對應(yīng)的配送站,再由京東小哥送到你家。

e841f26c-50fa-11ed-a3b6-dac502259ad0.png

京東倉配系統(tǒng)

你可以將 CDN 看作是服務(wù)上一層的特殊緩存服務(wù),分布在全國各地,主要用來處理靜態(tài)資源的請求。

e85dadf4-50fa-11ed-a3b6-dac502259ad0.png

CDN 簡易示意圖

我們經(jīng)常拿全站加速和內(nèi)容分發(fā)網(wǎng)絡(luò)做對比,不要把兩者搞混了!全站加速(不同云服務(wù)商叫法不同,騰訊云叫 ECDN、阿里云叫 DCDN)既可以加速靜態(tài)資源又可以加速動態(tài)資源,內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)主要針對的是靜態(tài)資源。

e87aac42-50fa-11ed-a3b6-dac502259ad0.png

絕大部分公司都會在項目開發(fā)中交使用 CDN 服務(wù),但很少會有自建 CDN 服務(wù)的公司?;诔杀?、穩(wěn)定性和易用性考慮,建議直接選擇專業(yè)的云廠商(比如阿里云、騰訊云、華為云、青云)或者 CDN 廠商(比如網(wǎng)宿、藍汛)提供的開箱即用的 CDN 服務(wù)。

很多朋友可能要問了:既然是就近訪問,為什么不直接將服務(wù)部署在多個不同的地方呢?

成本太高,需要部署多份相同的服務(wù)。

靜態(tài)資源通常占用空間比較大且經(jīng)常會被訪問到,如果直接使用服務(wù)器或者緩存來處理靜態(tài)資源請求的話,對系統(tǒng)資源消耗非常大,可能會影響到系統(tǒng)其他服務(wù)的正常運行。

同一個服務(wù)在在多個不同的地方部署多份(比如同城災(zāi)備、異地災(zāi)備、同城多活、異地多活)是為了實現(xiàn)系統(tǒng)的高可用而不是就近訪問。

CDN 工作原理是什么?

搞懂下面 3 個問題也就搞懂了 CDN 的工作原理:

靜態(tài)資源是如何被緩存到 CDN 節(jié)點中的?

如何找到最合適的 CDN 節(jié)點?

如何防止靜態(tài)資源被盜用?

靜態(tài)資源是如何被緩存到 CDN 節(jié)點中的?

你可以通過預(yù)熱的方式將源站的資源同步到 CDN 的節(jié)點中。這樣的話,用戶首次請求資源可以直接從 CDN 節(jié)點中取,無需回源。這樣可以降低源站壓力,提升用戶體驗。

如果不預(yù)熱的話,你訪問的資源可能不再 CDN 節(jié)點中,這個時候 CDN 節(jié)點將請求源站獲取資源,這個過程是大家經(jīng)常說的回源。

命中率和回源率是衡量 CDN 服務(wù)質(zhì)量兩個重要指標(biāo)。命中率越高越好,回源率越低越好。

如果資源有更新的話,你也可以對其刷新,刪除 CDN 節(jié)點上緩存的資源,當(dāng)用戶訪問對應(yīng)的資源時直接回源獲取最新的資源,并重新緩存。

如何找到最合適的 CDN 節(jié)點?

GSLB (Global Server Load Balance,全局負載均衡)是 CDN 的大腦,負責(zé)多個 CDN 節(jié)點之間相互協(xié)作,最常用的是基于 DNS 的 GSLB。

CDN 會通過 GSLB 找到最合適的 CDN 節(jié)點,更具體點來說是下面這樣的:

瀏覽器向 DNS 服務(wù)器發(fā)送域名請求;

DNS 服務(wù)器向根據(jù) CNAME( Canonical Name ) 別名記錄向 GSLB 發(fā)送請求;

GSLB 返回性能最好(通常距離請求地址最近)的 CDN 節(jié)點(邊緣服務(wù)器,真正緩存內(nèi)容的地方)的地址給瀏覽器;

瀏覽器直接訪問指定的 CDN 節(jié)點。

e8c167d6-50fa-11ed-a3b6-dac502259ad0.png

CDN 原理示意圖

為了方便理解,上圖其實做了一點簡化。GSLB 內(nèi)部可以看作是 CDN 專用 DNS 服務(wù)器和負載均衡系統(tǒng)組合。CDN 專用 DNS 服務(wù)器會返回負載均衡系統(tǒng) IP 地址給瀏覽器,瀏覽器使用 IP 地址請求負載均衡系統(tǒng)進而找到對應(yīng)的 CDN 節(jié)點。

GSLB 是如何選擇出最合適的 CDN 節(jié)點呢?GSLB 會根據(jù)請求的 IP 地址、CDN 節(jié)點狀態(tài)(比如負載情況、性能、響應(yīng)時間、帶寬)等指標(biāo)來綜合判斷具體返回哪一個 CDN 節(jié)點的地址。

如何防止資源被盜刷?

如果我們的資源被其他用戶或者網(wǎng)站非法盜刷的話,將會是一筆不小的開支。

解決這個問題最常用最簡單的辦法設(shè)置Referer 防盜鏈,具體來說就是根據(jù) HTTP 請求的頭信息里面的 Referer 字段對請求進行限制。我們可以通過 Referer 字段獲取到當(dāng)前請求頁面的來源頁面的網(wǎng)站地址,這樣我們就能確定請求是否來自合法的網(wǎng)站。

CDN 服務(wù)提供商幾乎都提供了這種比較基礎(chǔ)的防盜鏈機制。

e8d21324-50fa-11ed-a3b6-dac502259ad0.png

騰訊云 CDN Referer 防盜鏈配置

不過,如果站點的防盜鏈配置允許 Referer 為空的話,通過隱藏 Referer,可以直接繞開防盜鏈。

通常情況下,我們會配合其他機制來確保靜態(tài)資源被盜用,一種常用的機制是時間戳防盜鏈。相比之下,時間戳防盜鏈的安全性更強一些。時間戳防盜鏈加密的 URL 具有時效性,過期之后就無法再被允許訪問。

時間戳防盜鏈的 URL 通常會有兩個參數(shù)一個是簽名字符串,一個是過期時間。簽名字符串一般是通過對用戶設(shè)定的加密字符串、請求路徑、過期時間通過 MD5 哈希算法取哈希的方式獲得。

時間戳防盜鏈 URL 示例:

http://cdn.wangsu.com/4/123.mp3?wsSecret=79aead3bd7b5db4adeffb93a010298b5&wsTime=1601026312

wsSecret :簽名字符串。

wsTime: 過期時間。

e8ea6ae6-50fa-11ed-a3b6-dac502259ad0.png

時間戳防盜鏈的實現(xiàn)也比較簡單,并且可靠性較高,推薦使用。并且,絕大部分 CDN 服務(wù)提供商都提供了開箱即用的時間戳防盜鏈機制。

e909df66-50fa-11ed-a3b6-dac502259ad0.png

七牛云時間戳防盜鏈配置

除了 Referer 防盜鏈和時間戳防盜鏈之外,你還可以 IP 黑白名單配置、IP 訪問限頻配置等機制來防盜刷。

總結(jié)

CDN 就是將靜態(tài)資源分發(fā)到多個不同的地方以實現(xiàn)就近訪問,進而加快靜態(tài)資源的訪問速度,減輕服務(wù)器以及帶寬的負擔(dān)。

基于成本、穩(wěn)定性和易用性考慮,建議直接選擇專業(yè)的云廠商(比如阿里云、騰訊云、華為云、青云)或者 CDN 廠商(比如網(wǎng)宿、藍汛)提供的開箱即用的 CDN 服務(wù)。

GSLB (Global Server Load Balance,全局負載均衡)是 CDN 的大腦,負責(zé)多個 CDN 節(jié)點之間相互協(xié)作,最常用的是基于 DNS 的 GSLB。CDN 會通過 GSLB 找到最合適的 CDN 節(jié)點。

為了防止靜態(tài)資源被盜用,我們可以利用Referer 防盜鏈+時間戳防盜鏈。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    14

    文章

    10253

    瀏覽量

    91486
  • CDN
    CDN
    +關(guān)注

    關(guān)注

    0

    文章

    330

    瀏覽量

    30550

原文標(biāo)題:美團二面:什么是 CDN ?CDN 工作原理是什么?

文章出處:【微信號:cxuangoodjob,微信公眾號:程序員cxuan】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    無線充電器的工作原理核心

    無線充電器的工作原理核心
    的頭像 發(fā)表于 12-06 10:19 ?1327次閱讀
    無線充電器的<b class='flag-5'>工作原理</b>核心

    onsemi碳化硅肖特基二極管NDSH40120CDN:高性能電源解決方案

    、1200 V的碳化硅肖特基二極管NDSH40120CDN,包括其技術(shù)特點、性能參數(shù)、典型特性以及封裝尺寸等方面,為電子工程師在電源設(shè)計中提供有價值的參考。
    的頭像 發(fā)表于 12-05 10:52 ?542次閱讀
    onsemi碳化硅肖特基二極管NDSH40120<b class='flag-5'>CDN</b>:高性能電源解決方案

    解析 onsemi NDSH20120CDN:SiC 肖特基二極管的卓越性能

    在電力電子領(lǐng)域,不斷追求更高的效率、更快的開關(guān)速度和更小的系統(tǒng)尺寸,碳化硅(SiC)肖特基二極管正逐漸成為新一代功率半導(dǎo)體的首選。今天,我們將深入探討 onsemi 的 NDSH20120CDN 碳化硅肖特基二極管,了解其特點、性能參數(shù)以及應(yīng)用場景。
    的頭像 發(fā)表于 12-01 16:01 ?352次閱讀
    解析 onsemi NDSH20120<b class='flag-5'>CDN</b>:SiC 肖特基二極管的卓越性能

    碳化硅肖特基二極管NDSH30120CDN:開啟高效電源設(shè)計新時代

    在電源設(shè)計領(lǐng)域,器件的性能直接影響著整個系統(tǒng)的效率、可靠性和成本。今天,我們要深入探討的是安森美(onsemi)的碳化硅(SiC)肖特基二極管NDSH30120CDN,這款器件以其卓越的性能,為電源設(shè)計帶來了全新的解決方案。
    的頭像 發(fā)表于 12-01 15:44 ?398次閱讀
    碳化硅肖特基二極管NDSH30120<b class='flag-5'>CDN</b>:開啟高效電源設(shè)計新時代

    高防服務(wù)器、高防IP、高防CDN:三種主流防御方案對比

    、高防IP和高防CDN。它們各有優(yōu)劣,適用于不同的業(yè)務(wù)場景。本文將從原理、優(yōu)缺點、適用場景等多個維度,為您帶來一份詳盡的對比指南,幫助您做出最明智的選擇。 一、 高防服務(wù)器:堅固的“堡壘式”防御 1. 工作原理 高防服務(wù)器可以理解
    的頭像 發(fā)表于 10-23 10:25 ?1352次閱讀

    交換機光模塊收發(fā)光超閾值無告警問題的處理方法

    某互聯(lián)網(wǎng)電視CDN網(wǎng)絡(luò)使用ZXR10 5960-56QU-HC交換機作為承載設(shè)備,通過光口與城域網(wǎng)設(shè)備以及CDN服務(wù)器對接,承載互聯(lián)網(wǎng)電視視頻流量。日常運行中發(fā)現(xiàn)設(shè)備沒有上報光模塊收發(fā)光超閾值告警,造成無法對互聯(lián)網(wǎng)電視的網(wǎng)絡(luò)質(zhì)差做提前干預(yù)。
    的頭像 發(fā)表于 10-16 09:34 ?879次閱讀
    交換機光模塊收發(fā)光超閾值無告警問題的處理方法

    交換機無法Ping通本機IPv6接口地址問題

    某互聯(lián)網(wǎng)電視CDN網(wǎng)絡(luò)ZXR10 5960-56QU-HC(簡稱5960)交換機下掛CDN服務(wù)器,vlan-if接口地址作為服務(wù)器網(wǎng)關(guān),在運行中出現(xiàn)服務(wù)器無法ping通IPv6網(wǎng)關(guān),并且5960也無法ping通該接口的IPv6地址。
    的頭像 發(fā)表于 07-22 11:25 ?2448次閱讀
    交換機無法Ping通本機IPv6接口地址問題

    FLASH的工作原理與應(yīng)用

    14FLASHFLASH的工作原理與應(yīng)用OWEIS1什么是FLASH?Flash閃存是一種非易失性半導(dǎo)體存儲器,它結(jié)合了ROM(只讀存儲器)和RAM(隨機訪問存儲器)的優(yōu)點,具有電子可擦除和可編程
    的頭像 發(fā)表于 05-27 13:10 ?2081次閱讀
    FLASH的<b class='flag-5'>工作原理</b>與應(yīng)用

    GPIO配置的工作原理是什么?

    我使用 EZ-USB 配置實用程序,我想知道是否有人知道 GPIO 配置的工作原理。 例如,GPIO0 可以用作傳感器復(fù)位,我知道這個 GPIO0 用于重置傳感器,但我不明白的是選項用戶 GPIO 例如GPIO 1可以是User GPIO0,這是什么意思呢?
    發(fā)表于 05-19 06:56

    電動調(diào)壓器的工作原理

    電壓調(diào)壓器是一種用于控制電路中電壓的裝置,其工作原理因類型而異,以下是幾種常見電壓調(diào)壓器的工作原理
    的頭像 發(fā)表于 05-12 13:46 ?1356次閱讀
    電動調(diào)壓器的<b class='flag-5'>工作原理</b>

    微動開關(guān)的工作原理

    微動開關(guān)的工作原理
    的頭像 發(fā)表于 04-17 09:00 ?3604次閱讀

    如何監(jiān)控RAKsmart CDN的性能?

     RAKsmart CDN擁有遍布全球的多個數(shù)據(jù)中心節(jié)點,通過將網(wǎng)站的靜態(tài)資源緩存到這些節(jié)點上,使用戶能夠從距離他們最近的服務(wù)器獲取內(nèi)容,從而大大減少了頁面加載時間,提高了網(wǎng)站的訪問速度,以下是一些監(jiān)控RAKsmart CDN性能的方法。主機推薦小編為您整理發(fā)布。
    的頭像 發(fā)表于 03-31 11:06 ?558次閱讀

    愛普生壓控晶振 VG7050CDN(X1G004861)在 5G 通信基站中的應(yīng)用

    隨著5G通信技術(shù)的迅猛發(fā)展,全球范圍內(nèi)的5G網(wǎng)絡(luò)部署正在加速推進。壓控晶體振蕩器(VCXO)作為核心時鐘源器件,其性能優(yōu)劣直接決定了5G基站的信號質(zhì)量和網(wǎng)絡(luò)穩(wěn)定性。VG7050CDN
    的頭像 發(fā)表于 03-25 16:03 ?855次閱讀

    阿里云是什么?企業(yè)不可不知的云端架構(gòu)服務(wù)!

    阿里云是什么?中國高速連線阿里云 CDN 服務(wù) 阿里云為國內(nèi)云端市場中市占有率第一的云平臺,由阿里巴巴集團自主研發(fā),在國內(nèi)使用的線路品質(zhì)穩(wěn)定、效能絕佳。阿里云服務(wù)器在基礎(chǔ)架構(gòu)、數(shù)據(jù) AI 智能、安全
    的頭像 發(fā)表于 03-16 09:43 ?1647次閱讀

    開關(guān)電源的基本工作原理

    ;如果從用 途上來分,還可以分成更多種類。 下面我們先對串聯(lián)式、并聯(lián)式、變壓器式等三種最基本的開關(guān)電源工作原理進行簡單介紹,其它種類的開關(guān)電源也將逐步進行詳細分析。 串聯(lián)式開關(guān)電源 串聯(lián)式
    發(fā)表于 03-10 17:01