CDN緩存是指在一定時(shí)間內(nèi)按一定規(guī)則保存在某一物理設(shè)備或節(jié)點(diǎn)上的內(nèi)容,緩存的內(nèi)容可能是文檔、照片、視頻及其他文件等。
CDN實(shí)現(xiàn)緩存功能的服務(wù)器通常就叫緩存服務(wù)器,通常CDN緩存功能模塊與CDN流媒體服務(wù)器合設(shè)。當(dāng)用戶首次向緩存服務(wù)器發(fā)起訪問請(qǐng)求時(shí),由于緩存服務(wù)器的內(nèi)容未命中,則需要向上級(jí)服務(wù)器發(fā)起內(nèi)容請(qǐng)求拉取內(nèi)容,為用戶提供“邊拉邊放”的服務(wù)。緩存服務(wù)器根據(jù)一定的緩存算法,決定對(duì)下載下來的文件進(jìn)行保存或刪除。由于緩存服務(wù)器離用戶很近,所以響應(yīng)速度快,能夠節(jié)省傳輸成本,并且減少了源站服務(wù)器的壓力。
雖然CDN邊緣節(jié)點(diǎn)緩存策略因服務(wù)商不同而不同,但一般都會(huì)遵循h(huán)ttp標(biāo)準(zhǔn)協(xié)議,通過http響應(yīng)頭中的Cache-control: max-age的字段來設(shè)置CDN邊緣節(jié)點(diǎn)數(shù)據(jù)緩存時(shí)間。當(dāng)客戶端向CDN節(jié)點(diǎn)請(qǐng)求數(shù)據(jù)時(shí),CDN節(jié)點(diǎn)會(huì)判斷緩存數(shù)據(jù)是否過期,若緩存數(shù)據(jù)并沒有過期,則直接將緩存數(shù)據(jù)返回給客戶端;否則,CDN節(jié)點(diǎn)就會(huì)向源站發(fā)出回源請(qǐng)求,從源站拉取最新數(shù)據(jù),更新本地緩存,并將最新數(shù)據(jù)返回給客戶端。
CDN服務(wù)商一般會(huì)提供基于文件后綴、目錄多個(gè)維度來指定CDN緩存時(shí)間,為用戶提供更精細(xì)化的緩存管理。CDN緩存時(shí)間會(huì)對(duì)“回源率”產(chǎn)生直接的影響。若CDN緩存時(shí)間較短,CDN邊緣節(jié)點(diǎn)上的數(shù)據(jù)會(huì)經(jīng)常失效,導(dǎo)致頻繁回源,增加了源站的負(fù)載,同時(shí)也增大的訪問延時(shí);若CDN緩存時(shí)間太長,會(huì)帶來數(shù)據(jù)更新時(shí)間慢的問題。開發(fā)者需要增對(duì)特定的業(yè)務(wù),來做特定的數(shù)據(jù)緩存時(shí)間管理。
版權(quán)聲明:本文章文字內(nèi)容來自第三方投稿,版權(quán)歸原始作者所有。本網(wǎng)站不擁有其版權(quán),也不承擔(dān)文字內(nèi)容、信息或資料帶來的版權(quán)歸屬問題或爭議。如有侵權(quán),請(qǐng)聯(lián)系contentedit@huawei.com,本網(wǎng)站有權(quán)在核實(shí)確屬侵權(quán)后,予以刪除文章。