CDN簡(jiǎn)介
CDN就是內(nèi)容分布網(wǎng)絡(luò)所森,是構(gòu)筑在現(xiàn)有Internet上的一種先進(jìn)的流量分配網(wǎng)絡(luò)。其目的就是通過(guò)在現(xiàn)有的Internet中增加一層新的網(wǎng)絡(luò)架構(gòu)纷妆,將網(wǎng)站的內(nèi)容發(fā)布到最接近用戶的網(wǎng)絡(luò)“邊緣”晴弃,使用戶可以就近取得所需的內(nèi)容,提高用戶訪問(wèn)網(wǎng)站的響應(yīng)速度粒蜈。目前CDN都以緩存網(wǎng)站中的靜態(tài)數(shù)據(jù)為主旗国。
CDN要達(dá)到的目標(biāo)
1、可擴(kuò)展度硝。性能可擴(kuò)展性:可應(yīng)對(duì)新增的大量數(shù)據(jù)、用戶和事務(wù)的擴(kuò)展能力蕊程。成本可擴(kuò)展性:用低廉的運(yùn)營(yíng)成本提供動(dòng)態(tài)的服務(wù)能力和高質(zhì)量的內(nèi)容分發(fā)。
2驹暑、安全性辨赐。強(qiáng)調(diào)提供物理設(shè)備、網(wǎng)絡(luò)掀序、軟件、數(shù)據(jù)和服務(wù)過(guò)程的安全性叶雹,減少因DDoS攻擊或其他惡意行為造成商業(yè)網(wǎng)站的業(yè)務(wù)中斷换吧。
3、可靠性筋遭、響應(yīng)和執(zhí)行暴拄。服務(wù)可用性指能夠處理可能的故障和用戶體驗(yàn)下降的問(wèn)題,通過(guò)負(fù)載均衡及時(shí)提供網(wǎng)絡(luò)的容錯(cuò)機(jī)制乖篷。
CDN架構(gòu)
一個(gè)用戶訪問(wèn)某個(gè)靜態(tài)文件响驴,這個(gè)靜態(tài)文件的域名假如是cdn.taobao.com,那么首先要向LocalDNS服務(wù)器發(fā)起請(qǐng)求豁鲤,經(jīng)過(guò)迭代解析后回到這個(gè)域名所在的注冊(cè)服務(wù)器解析鲸沮,一般每個(gè)公司都會(huì)有一個(gè)DNS解析服務(wù)器。這時(shí)這個(gè)CDN解析服務(wù)器通常會(huì)把它重新CNAME解析到另一個(gè)域名楣号,而這個(gè)域名將最終會(huì)被指向CDN全局中的DNS負(fù)載均衡服務(wù)器,再由這個(gè)GTM來(lái)最終分配是哪個(gè)地方的用戶返回給離這個(gè)訪問(wèn)用戶最近的CDN節(jié)點(diǎn)藻懒。拿到這個(gè)CDN解析結(jié)果视译,用戶就直接去這個(gè)CDN節(jié)點(diǎn)訪問(wèn)這個(gè)靜態(tài)文件,如果這個(gè)節(jié)點(diǎn)中所請(qǐng)求的文件不存在鄙早,就會(huì)再回到源站去獲取這個(gè)文件第美,然后再返回給用戶。
負(fù)載均衡
負(fù)載均衡就是對(duì)工作任務(wù)進(jìn)行平衡什往、分?jǐn)偟蕉鄠€(gè)操作單元上執(zhí)行别威,如圖片服務(wù)器驴剔、應(yīng)用服務(wù)器等,共同完成工作任務(wù)豺妓。它可以提高服務(wù)器的響應(yīng)速度及利用效率布讹,避免軟件或硬件的單點(diǎn)失效,解決網(wǎng)絡(luò)擁堵問(wèn)題描验,實(shí)現(xiàn)地理位置無(wú)關(guān)性。
通常有三種負(fù)載均衡架構(gòu)絮缅,分別是鏈路負(fù)載均衡呼股、集群負(fù)載均衡和操作系統(tǒng)負(fù)載均衡。
鏈路負(fù)載均衡吸奴,是通過(guò) Global DNS來(lái)動(dòng)態(tài)解析成不同的IP,然后用戶通過(guò)IP訪問(wèn)不同的目標(biāo)服務(wù)器蔼两。優(yōu)點(diǎn)是直接訪問(wèn)目標(biāo)服務(wù)器逞度,訪問(wèn)會(huì)很快,但是缺點(diǎn)是档泽,由于DNS有本地和Local DNS Server的緩存原因,如果有一個(gè)目標(biāo)服務(wù)器掛掉抑胎,這個(gè)對(duì)應(yīng)關(guān)系沒(méi)有及時(shí)更新渐北,那么用戶就無(wú)法訪問(wèn),后果嚴(yán)重恃锉。
集群負(fù)載均衡呕臂,是一種常見(jiàn)的負(fù)載均衡方式,一般分為硬件負(fù)載均衡和軟件負(fù)載均衡歧蒋。硬件負(fù)載均衡的優(yōu)點(diǎn)是性能好,缺點(diǎn)是硬件設(shè)備非常昂貴萝映。所以一般采用軟件負(fù)載均衡褥琐,優(yōu)點(diǎn)是價(jià)格低廉,缺點(diǎn)是一次訪問(wèn)請(qǐng)求要經(jīng)過(guò)多次代理服務(wù)器贸宏,會(huì)增加網(wǎng)絡(luò)延時(shí)磕洪。目前軟件負(fù)載均衡技術(shù)較多,有四層負(fù)載均衡與七層負(fù)載均衡析显,詳情參考:https://kb.cnblogs.com/page/188170/
CDN動(dòng)態(tài)加速
CDN動(dòng)態(tài)加速技術(shù)是一種流行的優(yōu)化技術(shù),技術(shù)原理就是在CDN的DNS解析中通過(guò)動(dòng)態(tài)的鏈路探測(cè)來(lái)尋找回源最好的一條路徑分尸,然后通過(guò)DNS的調(diào)度將所有的請(qǐng)求調(diào)度到這個(gè)最優(yōu)路徑回源,從而加速用戶的訪問(wèn)效率孔庭。