DNS域名解析過(guò)程
當(dāng)用戶在瀏覽器中輸入 www.abc.com 時(shí)
- 瀏覽器會(huì)檢查緩存中有沒(méi)有這個(gè)域名對(duì)應(yīng)的解析過(guò)的ip如果緩存中有,解析過(guò)程就結(jié)束既荚。
- 如果瀏覽器緩存中沒(méi)有,瀏覽器會(huì)查找操作系統(tǒng)緩存中是否有這個(gè)域名對(duì)應(yīng)的 DNS解析結(jié)果栋艳。
以上還沒(méi)有使用域名解析服務(wù)器恰聘,因?yàn)槎际窃诒镜赝瓿傻?/strong>
- 操作系統(tǒng)將把這個(gè)域名發(fā)送給這里設(shè)置的LDNS 也就是 本地區(qū)的域名服務(wù)器,如學(xué)校的DNS服務(wù)器吸占,電信聯(lián)通 等晴叨。
- 如果LDNS沒(méi)有命中就直接到 Root Server域名服務(wù)器請(qǐng)求解析。
- 根域名服務(wù)器返回給本地域名服務(wù)器一個(gè)所查詢域的主域名服務(wù)器(gTLD)地址矾屯,gTLD是國(guó)際頂級(jí)域名服務(wù)器 如 .com .cn .org
- 本地域名服務(wù)器再向上一步返回的gTLD服務(wù)器發(fā)送請(qǐng)求
- 接受請(qǐng)求的gTLD服務(wù)器查找并返回此域名對(duì)應(yīng)的 Name Server域名服務(wù)器的地址兼蕊。這個(gè) Name Server 通常就是你注冊(cè)的域名服務(wù)器,例如你在某個(gè)域名服務(wù)器提供商申請(qǐng)的域名件蚕,那么這個(gè)域名解析任務(wù)就由這個(gè)域名提供商的服務(wù)器來(lái)完成孙技。
- Name Server 域名服務(wù)器會(huì)查詢存儲(chǔ)的域名和IP的映射關(guān)系表产禾,在正常情況下都根據(jù)域名的得到的IP記錄,連同一個(gè)TTL值返回給 DNS Server域名服務(wù)器牵啦。
- 返回改域名對(duì)應(yīng)的IP和TTL值Local DNS Server 會(huì)緩存這個(gè)域名和IP的對(duì)應(yīng)關(guān)系亚情,緩存時(shí)間由TTL控制。
- 把解析的結(jié)果返回給用戶哈雏,用戶根據(jù)TTL值緩存在本地緩存中楞件,域名解析過(guò)程結(jié)束。
實(shí)際生活中可能不止這10個(gè)步驟裳瘪,因?yàn)镹ame Server可能存在多級(jí)土浸,或者有一個(gè)GT來(lái)負(fù)載均衡控制,
JVM中也會(huì)緩存DNS的解析結(jié)果盹愚,這個(gè)緩存是在InetAddress類中完成的栅迄,緩存時(shí)間有兩種緩存策略:
- 正確解析結(jié)果緩存
- 失敗解析結(jié)果緩存
域名解析方式
A記錄站故,將多個(gè)域名解析到一個(gè)IP地址皆怕,但是不能將一個(gè)域名解析到多個(gè)IP地址
MX記錄,可以將某個(gè)域名下的郵件服務(wù)器指向自己的 Mail Server
CNAME記錄西篓,Canonical Name(別名解析) 為一個(gè)域名設(shè)置一個(gè)或多個(gè)別名
NS記錄愈腾, 為某個(gè)域名制定DNS解析服務(wù)器,也就是這個(gè)域名有指定的IP地址的DNS服務(wù)器去解析
TXT記錄岂津,為某個(gè)主機(jī)名或域名設(shè)置說(shuō)明虱黄。
CDN工作機(jī)制
內(nèi)容分布網(wǎng)絡(luò),在Internet中增加一層新的網(wǎng)絡(luò)構(gòu)架吮成、將網(wǎng)站的內(nèi)容發(fā)布到最接近用戶的網(wǎng)絡(luò)邊緣橱乱、使用戶可以就近去的所需的內(nèi)容提高用戶訪問(wèn)網(wǎng)站的響應(yīng)速度。 CND緩存靜態(tài)數(shù)據(jù)粱甫,如CSS泳叠、JS、圖片和靜態(tài)網(wǎng)頁(yè)等數(shù)據(jù)茶宵,從而加速網(wǎng)頁(yè)數(shù)據(jù)內(nèi)容的下載速度危纫。
引用一個(gè)網(wǎng)上的例子 :
A家的網(wǎng)速 100M的,但他只用了10M的速度乌庶,B家的網(wǎng)速是10M的种蝶,但是他需要15M的速度才行。怎么辦呢瞒大。 C是一家CDN服務(wù)商螃征,在A家有個(gè)節(jié)點(diǎn)(就像A是一個(gè)贊助商一樣)B在C家買了CDN加速服務(wù)。當(dāng)B的速度不夠的時(shí)候透敌,CDN加速就會(huì)選擇有節(jié)余的節(jié)點(diǎn)來(lái)幫B盯滚,提高B的速度锅棕。這樣B的速度就能達(dá)到或超過(guò)15M ,皆大歡喜淌山。A沒(méi)浪費(fèi)裸燎,B速度有了,C賺了錢泼疑。 當(dāng)C的節(jié)點(diǎn)在全國(guó)都有德绿,非常多的時(shí)候。那么你用C家的CDN加速服務(wù)退渗,你就會(huì)健步如飛了移稳。
CDN= 鏡像+緩存+整體負(fù)載均衡
負(fù)載均衡
對(duì)工作任務(wù)進(jìn)行平衡、分?jǐn)偟阶鰝€(gè)操作單元上執(zhí)行会油,可以提高服務(wù)器響應(yīng)速度及利用效率个粱,避免軟件或硬件模塊出現(xiàn)單點(diǎn)失效,解決網(wǎng)絡(luò)擁塞問(wèn)題翻翩,實(shí)現(xiàn)地理位置無(wú)關(guān)性都许、
通常有三種負(fù)載均衡架構(gòu),
- 鏈路負(fù)載均衡
- 集群負(fù)載均衡
- 操作系統(tǒng)負(fù)載均衡