成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

CDN與緩存全面詳聊,看完之后,大部分程序員收藏了...

存儲 存儲軟件
緩存是一個到處都存在的用空間換時間的例子。通過使用多余的空間,我們能夠獲取更快的速度。我們通常意義上說的緩存主要包含兩部分。第一個是用戶瀏覽器端的緩存,第二個是服務器端為了提高訪問速度而加的CDN。

[[317213]]

緩存是什么

緩存是一個到處都存在的用空間換時間的例子。通過使用多余的空間,我們能夠獲取更快的速度。

我們通常意義上說的緩存主要包含兩部分。第一個是用戶瀏覽器端的緩存,第二個是服務器端為了提高訪問速度而加的CDN。

首先,看看沒有網站沒有接入CDN時,用戶瀏覽器與服務器是如何交互的:

 

CDN與緩存全面詳聊,看完之后,大部分程序員收藏了...

 

用戶在瀏覽網站的時候,瀏覽器能夠在本地保存網站中的圖片或者其他文件的副本,這樣用戶再次訪問該網站的時候,瀏覽器就不用再下載全部的文件,減少了下載量意味著提高了頁面加載的速度。

如果中間加上一層CDN,那么用戶瀏覽器與服務器的交互如下:

 

CDN與緩存全面詳聊,看完之后,大部分程序員收藏了...

 

客戶端瀏覽器先檢查是否有本地緩存是否過期,如果過期,則向CDN邊緣節點發起請求,CDN邊緣節點會檢測用戶請求數據的緩存是否過期,如果沒有過期,則直接響應用戶請求,此時一個完成http請求結束;如果數據已經過期,那么CDN還需要向源站發出回源請求(back to the source request),來拉取最新的數據。CDN的典型拓撲圖如下:

 

CDN與緩存全面詳聊,看完之后,大部分程序員收藏了...

 

可以看到,在存在CDN的場景下,數據經歷了客戶端(瀏覽器)緩存和CDN邊緣節點緩存兩個階段,下面分別對這兩個階段的緩存進行詳細的剖析。

CDN是什么

CDN的全稱是Content Delivery Network,即內容分發網絡。其基本思路是盡可能避開互聯網上有可能影響數據傳輸速度和穩定性的瓶頸和環節,使內容傳輸的更快、更穩定。

CDN可以理解為一個普通緩存,如代理緩存或者說邊緣緩存,即便不關心用戶的具體地理位置,也應該考慮使用cdn的代理緩存來提高用戶體驗。

CDN的作用

CDN就可以理解為分布在每個縣城的火車票代售點,用戶在瀏覽網站的時候,CDN會選擇一個離用戶最近的CDN邊緣節點來響應用戶的請求,這樣海南移動用戶的請求就不會千里迢迢跑到北京電信機房的服務器(假設源站部署在北京電信機房)上了。

CDN的優勢

很明顯:

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

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

CDN的缺點

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

CDN緩存策略

CDN邊緣節點緩存策略因服務商不同而不同,但一般都會遵循http標準協議,通過http響應頭中的Cache-control: max-age的字段來設置CDN邊緣節點數據緩存時間。

當客戶端向CDN節點請求數據時,CDN節點會判斷緩存數據是否過期,若緩存數據并沒有過期,則直接將緩存數據返回給客戶端;否則,CDN節點就會向源站發出回源請求,從源站拉取最新數據,更新本地緩存,并將最新數據返回給客戶端。

CDN服務商一般會提供基于文件后綴、目錄多個維度來指定CDN緩存時間,為用戶提供更精細化的緩存管理。

CDN緩存時間會對“回源率”產生直接的影響。若CDN緩存時間較短,CDN邊緣節點上的數據會經常失效,導致頻繁回源,增加了源站的負載,同時也增大的訪問延時;若CDN緩存時間太長,會帶來數據更新時間慢的問題。開發者需要增對特定的業務,來做特定的數據緩存時間管理。

CDN緩存刷新

CDN邊緣節點對開發者是透明的,相比于瀏覽器Ctrl+F5的強制刷新來使瀏覽器本地緩存失效,開發者可以通過CDN服務商提供的“刷新緩存”接口來達到清理CDN邊緣節點緩存的目的。這樣開發者在更新數據后,可以使用“刷新緩存”功能來強制CDN節點上的數據緩存過期,保證客戶端在訪問時,拉取到最新的數據。

責任編輯:武曉燕 來源: 今日頭條
相關推薦

2019-11-24 19:34:04

HTTP長連接短連接

2019-09-23 20:00:34

MySQL數據庫程序員

2019-09-12 09:56:13

程序員技能開發者

2019-07-26 08:33:28

HTTP服務端負載均衡

2019-10-11 10:05:30

程序員固態硬盤Google

2019-08-09 11:25:01

Java虛擬機Java程序員

2019-06-12 10:35:49

程序員高效工具開源

2020-04-15 16:07:01

程序員技術數據

2020-04-03 08:42:08

Servelt3程序員Tomcat

2021-11-30 22:59:28

程序員IT架構師

2011-11-09 09:59:21

云計算IT管理

2024-11-01 11:10:51

2025-06-04 11:06:54

比特幣區塊鏈挖礦

2020-12-09 16:55:57

程序員技術

2019-07-12 15:28:41

緩存數據庫瀏覽器

2017-07-03 11:15:46

LinuxBoot Repair

2025-03-11 09:04:26

2018-08-31 07:33:58

2010-11-18 12:44:25

LibreOffice

2015-08-04 09:56:48

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美日韩一区在线 | 一区二区三区成人 | 成人国产一区二区三区精品麻豆 | 亚洲欧美日韩精品久久亚洲区 | 久久久久久黄 | 国产精品久久久久久久久久久久 | 久久久久久电影 | 97视频成人| 久久成| 欧美日韩综合一区 | 亚洲第一成年免费网站 | 综合久久一区 | 久久精品欧美一区二区三区麻豆 | 天堂一区二区三区 | 亚洲 一区 | 亚洲狠狠丁香婷婷综合久久久 | 亚洲欧美中文字幕在线观看 | 特级特黄特色的免费大片 | 欧美性a视频 | 亚洲第一黄色网 | 8x国产精品视频一区二区 | 欧美aaaaaaaa| 精品国产一区二区三区在线观看 | 亚洲国产精品成人综合久久久 | 亚洲一区二区在线播放 | 国产成人精品一区二区三区在线 | 亚洲精品无| 久久久2o19精品 | 一级在线 | 日韩视频中文字幕 | 国产黄色一级片 | 97国产精品 | 欧美在线a| 亚洲国产免费 | 亚洲精品一区二区网址 | 色婷婷久久综合 | 中文字幕第九页 | 久久久夜色精品亚洲 | 国产精品国产馆在线真实露脸 | 逼逼网| 亚洲男人天堂 |