新聞中心
一、CDN常見多級緩存
?1、CDN概念?
CDN的全稱是Content Delivery Network,即內容分發(fā)網(wǎng)絡。其基本思路是盡可能避開互聯(lián)網(wǎng)上有可能影響數(shù)據(jù)傳輸速度和穩(wěn)定性的瓶頸和環(huán)節(jié),使內容傳輸?shù)母?、更穩(wěn)定。通過在網(wǎng)絡各處放置節(jié)點服務器所構成的在現(xiàn)有的互聯(lián)網(wǎng)基礎之上的一層智能虛擬網(wǎng)絡,CDN系統(tǒng)能夠實時地根據(jù)網(wǎng)絡流量和各節(jié)點的連接、負載狀況以及到用戶的距離和響應時間等綜合信息將用戶的請求重新導向離用戶最近的服務節(jié)點上。其目的是使用戶可就近取得所需內容,解決 Internet網(wǎng)絡擁擠的狀況,提高用戶訪問網(wǎng)站的響應速度。
?2、CDN工作方法?
客戶端瀏覽器先檢查是否有本地緩存是否過期,如果過期,則向CDN邊緣節(jié)點發(fā)起請求,CDN邊緣節(jié)點會檢測用戶請求數(shù)據(jù)的緩存是否過期,如果沒有過期,則直接響應用戶請求,此時一個完成http請求結束;如果數(shù)據(jù)已經過期,那么CDN還需要向源站發(fā)出回源請求(back to the source request),來拉取最新的數(shù)據(jù)。CDN的典型拓撲圖如下:

成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供鄂州企業(yè)網(wǎng)站建設,專注與成都網(wǎng)站制作、做網(wǎng)站、html5、小程序制作等業(yè)務。10年已為鄂州眾多企業(yè)、政府機構等服務。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進行中。
CDN的典型拓撲圖
?3、CDN層級劃分:?
CDN系統(tǒng)中,直接面向用戶,負責給用戶提供內容服務的的Cache設備都部署在整個 CDN網(wǎng)絡的邊緣位置,所以將這一層稱為邊緣層。
CDN系統(tǒng)中,中心層負責全局的管理和控制,同時也保存了最多的內容Cache。在邊緣層設備未能命中Cache時,需要向中心層設備請求;而中心層未能命中時,則需要向源站請求。不同的CDN系統(tǒng)設計存在差異,中心層可能具備用戶服務的能力,也可能只會向下一層提供服務。
如果CDN系統(tǒng)比較龐大,邊緣層向中心層請求內容太多,會造成中心層負載壓力太大。此時,需要在中心層和邊緣層之間部署一個區(qū)域層,負責一個區(qū)域的管理和控制,也可以提供一些內容Cache供邊緣層訪問。
?4、CDN緩存?
瀏覽器本地緩存失效后,瀏覽器會向CDN邊緣節(jié)點發(fā)起請求。類似瀏覽器緩存,CDN邊緣節(jié)點也存在著一套緩存機制。
?5、CDN緩存的缺點?
CDN的分流作用不僅減少了用戶的訪問延時,也減少的源站的負載。但其缺點也很明顯:當網(wǎng)站更新時,如果CDN節(jié)點上數(shù)據(jù)沒有及時更新,即便用戶再瀏覽器使用Ctrl +F5的方式使瀏覽器端的緩存失效,也會因為CDN邊緣節(jié)點沒有同步最新數(shù)據(jù)而導致用戶訪問異常。
?6、CDN緩存策略?
CDN邊緣節(jié)點緩存策略因服務商不同而不同,但一般都會遵循h(huán)ttp標準協(xié)議,通過http響應頭中的Cache-control: max-age的字段來設置CDN邊緣節(jié)點數(shù)據(jù)緩存時間。
當客戶端向CDN節(jié)點請求數(shù)據(jù)時,CDN節(jié)點會判斷緩存數(shù)據(jù)是否過期,若緩存數(shù)據(jù)并沒有過期,則直接將緩存數(shù)據(jù)返回給客戶端;否則,CDN節(jié)點就會向源站發(fā)出回源請求,從源站拉取最新數(shù)據(jù),更新本地緩存,并將最新數(shù)據(jù)返回給客戶端。
CDN服務商一般會提供基于文件后綴、目錄多個維度來指定CDN緩存時間,為用戶提供更精細化的緩存管理。
CDN緩存時間會對“回源率”產生直接的影響。若CDN緩存時間較短,CDN邊緣節(jié)點上的數(shù)據(jù)會經常失效,導致頻繁回源,增加了源站的負載,同時也增大的訪問延時;若CDN緩存時間太長,會帶來數(shù)據(jù)更新時間慢的問題。開發(fā)者需要增對特定的業(yè)務,來做特定的數(shù)據(jù)緩存時間管理。
?7、CDN緩存刷新?
CDN邊緣節(jié)點對開發(fā)者是透明的,相比于瀏覽器Ctrl+F5的強制刷新來使瀏覽器本地緩存失效,開發(fā)者可以通過CDN服務商提供的“刷新緩存”接口來達到清理CDN邊緣節(jié)點緩存的目的。這樣開發(fā)者在更新數(shù)據(jù)后,可以使用“刷新緩存”功能來強制CDN節(jié)點上的數(shù)據(jù)緩存過期,保證客戶端在訪問時,拉取到最新的數(shù)據(jù)。
二**、CDN回源**
?1、回源原理?
源站內容有更新的時候,源站主動把內容推送到CDN節(jié)點。
常規(guī)的CDN都是回源的。即:當有用戶訪問某一個URL的時候,如果被解析到的那個CDN節(jié)點沒有緩存響應的內容,或者是緩存已經到期,就會回源站去獲取。如果沒有人訪問,那么CDN節(jié)點不會主動去源站拿的。
回源域名一般是cdn領域的專業(yè)術語,通常情況下,是直接用ip進行回源的,但是如果客戶源站有多個ip,并且ip地址會經常變化,對于cdn廠商來說,為了避免經常更改配置(回源ip),會采用回源域名方式進行回源,這樣即使源站的ip變化了,也不影響原有的配置。
CDN本來是給我們的網(wǎng)站加速的,但是有時會因為不合適的回源策略給服務器帶來負擔,只有選擇正確的策略才能給自己的網(wǎng)站帶來更高的訪問效率。
?2、CDN回源率計算方法?
回源比分為回源請求數(shù)比例及回源流量比例兩種
回源請求數(shù)比:統(tǒng)計數(shù)據(jù)來自所有邊緣節(jié)點上的請求記錄,其中,對于沒有緩存或緩存過期(可緩存)的請求以及不可緩存的請求,均計入回源請求中,其他直接命中緩存的,則為命中請求。
回源流量比:回源流量是回源請求文件大小產生的流量和請求本身產生的流量 回源流量比=回源流量/回源流量+用戶請求訪問的流量。
文章標題:什么是CDN?
轉載來源:http://www.dlmjj.cn/article/dpgogec.html


咨詢
建站咨詢
