有關(guān)CDN的介紹請(qǐng)見:http://blog.csdn.net/zhouziyu2011/article/details/60962103
1、CDN
CDN是一組分布在多個(gè)不同地理位置的Web服務(wù)器,用于更加有效地向用戶發(fā)布內(nèi)容,在優(yōu)化性能時(shí),會(huì)根據(jù)距離的遠(yuǎn)近來選擇。
CDN將網(wǎng)站的資源發(fā)布到離用戶最近的網(wǎng)絡(luò)邊緣,用戶可以就近取得資源內(nèi)容。
CDN通常部署靜態(tài)內(nèi)容:JavaScript腳本、CSS樣式表、圖片、圖標(biāo)、Flash等,不包括html頁面。
2、CDN用于前端性能優(yōu)化的背景:
瀏覽器是根據(jù)域(Domain)來緩存內(nèi)容資源的,只要域(Domain)不一樣,那么即使是同一個(gè)資源,也需要重復(fù)下載,且使用同樣的方式緩存起來,這需要需要占用帶寬和本地緩存空間。
3、CDN用于前端性能優(yōu)化:
1) 將靜態(tài)資源緩存到離用戶很近的相同網(wǎng)絡(luò)運(yùn)營(yíng)商的CDN節(jié)點(diǎn)上。
如果服務(wù)器離用戶更近,則HTTP請(qǐng)求和響應(yīng)時(shí)間將縮短。
不同地區(qū)的用戶訪問同一個(gè)域名能得到不同CDN節(jié)點(diǎn)的IP地址,這要依賴于CDN服務(wù)商提供的智能DNS服務(wù),瀏覽器發(fā)起域名查詢時(shí),智能DNS服務(wù)會(huì)根據(jù)用戶IP計(jì)算并返回離它最近的相同網(wǎng)絡(luò)運(yùn)營(yíng)商的CDN節(jié)點(diǎn)IP。
通過智能DNS服務(wù)獲取最近的相同網(wǎng)絡(luò)運(yùn)營(yíng)商的CDN節(jié)點(diǎn)IP后,不同地區(qū)的用戶會(huì)向離自己最近的相同網(wǎng)絡(luò)運(yùn)營(yíng)商的CDN節(jié)點(diǎn)發(fā)起請(qǐng)求,當(dāng)請(qǐng)求達(dá)到CDN節(jié)點(diǎn)后,節(jié)點(diǎn)會(huì)判斷自己的內(nèi)容緩存是否有效,一個(gè)地區(qū)內(nèi)只要有一個(gè)用戶先加載資源,就會(huì)在CDN中建立緩存,該地區(qū)的其他后續(xù)用戶都能直接讀取緩存數(shù)據(jù)。
2) 加載靜態(tài)資源使用與頁面不同的域名(不是用獨(dú)立的二級(jí)或三級(jí)域名,而是用獨(dú)立的一級(jí)域名)
靜態(tài)資源和主頁面不同域,加載靜態(tài)資源的HTTP請(qǐng)求就不會(huì)帶上主頁面中的cookie等數(shù)據(jù),減少了數(shù)據(jù)傳輸量,節(jié)省流量,提升上傳效率。
聯(lián)系客服