91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

瀏覽器緩存,DNS,CDN及域名解析的過程是怎樣的

發布時間:2022-02-07 15:11:02 來源:億速云 閱讀:260 作者:iii 欄目:開發技術

這篇文章主要介紹“瀏覽器緩存,DNSCDN及域名解析的過程是怎樣的”,在日常操作中,相信很多人在瀏覽器緩存,DNS,CDN及域名解析的過程是怎樣的問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”瀏覽器緩存,DNS,CDN及域名解析的過程是怎樣的”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

瀏覽器的緩存機制

當我們使用Ctrl+F5組合鍵刷新一個頁面時,在HTTP的請求頭中會增加一些請求頭,
它告訴服務端我們要獲取最新的數據而不是緩存。

Cache-Control

這個HTTP Head字段用于指定所有緩存機制在整個請求/響應鏈中必須服從的指令。

可選值說明
Public所有內容都將被緩存,在響應頭中設置
Private內容只緩存到私有緩存中,在響應頭中設置
no-cache所有內容都不會被緩存,在請求頭和響應頭中設置
no-store所有內容都不會被緩存到緩存或Internet臨時文件中,在響應頭中設置
must-revalidation/proxy-revalidation如果緩存的內容失敗,請求必須發送到服務器/代理以進行重新驗證,在請求頭中設置
max-age=xxx緩存的內容將在xxx秒后失效,這個選項只在HTTP 1.1中可用,和Last-Modified一起使用時優先級較高,在響應頭中設置

Cache-Control請求字段被各個瀏覽器支持的較好,而且它的優先級也比較高,
它和其他一些請求字段(如Expires)同時出現時,Cache-Control會覆蓋掉其他字段。

Expires

Expires通常的使用格式是Expires: Sat, 25 Feb 2012 12:22:17 GMT
后面跟著一個日期和時間,超過這個時間后,緩存的內容將失效。

Last-Modidified/Etag

Last-Modified字段一般用于表示一個服務器上的資源的最后修改時間,
資源可以是靜態(靜態內容自動加上Last-Modified字段),
或者動態的內容(如Servlet提供了一個getLastModified方法,用于檢查某個動態內容是否已經更新),
通過這個最后修改時間可以判斷當前請求的資源是否是最新的。

一般服務器端在響應頭中返回一個Last-Modified子彈,告訴瀏覽器這個頁面的最后修改時間,
Last-Modified: Sat, 25 Feb 2012 12:55:04 GMT,瀏覽器再次請求時,
在請求頭中增加一個If-Modified-Since: Sat, 25 Feb 2012 12:55:04 GMT字段,
詢問當前緩存的頁面是否是最新的,如果是最新的就返回304狀態碼,告訴瀏覽器是最新的,服務器也不會傳輸新的數據。

與Last-Modified字段有類似功能的還有一個Etag字段,
這個字段的作用是讓服務器給每個頁面分配一個唯一的編號,
然后通過這個編號來區分當前這個頁面是否最新的。

這種方式比使用Last-Modified更加靈活,但是在后端的Web服務器有多臺時比較難處理,
因為每個Web服務器都要記住網站的所有資源,
否則瀏覽器返回這個編號就沒有意義了。

DNS域名解析過程

當一個用戶在瀏覽器中輸入www.neiyidaogou.com時,DNS解析將會有將近10個步驟,這個過程大體描述如下。

瀏覽器

瀏覽器會檢查緩存中有沒有這個域名對應的解析過的IP地址,
如果緩存中有,這個解析過程就將結束。

瀏覽器緩存域名也是有限制的,不僅瀏覽器緩存大小有限制,而且緩存的時間也有限制,
通常情況下為幾分鐘到幾小時不等,
域名被緩存的時間限制可以通過TTL屬性來設置。

操作系統

如果用戶的瀏覽器緩存中沒有,瀏覽器會查找操作系統緩存中是否有這個域名對應的DNS解析結果。

其實操作系統也會有一個域名解析的過程,
在Windows中可以通過C:\Windows\System32\drivers\etc\hosts文件來設置,
你可以將任何域名解析到任何能夠訪問的IP地址。

在Linux中這個配置文件是/etc/hosts
當解析到這個配置文件中的某個域名時,操作系統會在緩存中緩存這個解析結果,
緩存的時間同樣是受這個域名的失效時間和緩存的空間大小控制的。

本地區的域名服務器

如果在本機中仍然無法完成域名的解析,就會真正請求域名服務器來解析這個域名了。

在我們的網絡配置中都會有“DNS服務器地址”這一項,
操作系統會把這個域名設置為本地區的域名服務器(LNDS)。

這個DNS通常都提供給你本地互聯網接入的一個DNS解析服務,
例如,你是在學校接入互聯網,那么你的DNS服務器肯定在你的學校,
如果你是在一個小區接入互聯網,那這個DNS就是提供給你接入互聯網的應用提供商,即電信或者聯通。

這個專門的域名解析服務器性能都會很好,它們一般都會緩存域名解析結果,
當然緩存時間是受域名的失效時間控制的。

Root Server域名服務器

如果LDNS仍然沒有命中,就直接到Root Server域名服務器請求解析。

返回主域名服務器地址

根域名服務器返回給本地域名服務器一個所查詢的主域名服務器(gTLD Server)地址。
gTLD是國際頂級域名服務器,如.com.cn.org等,全球只有13臺左右。

向主域名服務器發送請求

本地域名服務器(Local DNS Server)再向上一步返回的gTLD服務器發送請求。

域名提供商的服務器

接受請求的gTLD服務器查找并返回此域名對應的Name Server域名服務器的地址,
這個Name Server通常就是你注冊的域名服務器。

例如,你在某個域名服務器提供商申請的域名,那么這個域名解析任務就由這個域名提供商的服務器來完成。

映射關系表

Name Server域名服務器會查詢存儲在域名和IP的映射關系表,
在正常情況下會根據域名得到目標IP記錄,連同一個TTL值返回給DNS Server域名服務器。

Local DNS Server緩存

返回該域名對應的IP和TTL值,Local DNS Server會緩存這個域名和IP的對應關系,
緩存的時間由TTL值控制。

本地系統緩存

把解析的結果返回給用戶,用戶根據TTL值緩存在本地系統緩存中,域名解析過程結束。

注:在實際的DNS解析過程中,可能還不止這10個步驟,
如Name Server也可能有很多級,或者有一個GTM來負載均衡控制,
這都有可能會影響域名解析的過程。

幾種域名解析方式

域名解析記錄主要分為A記錄,MX記錄,CNAME記錄,NS記錄,和TXT記錄。

A記錄

A代表Address,用來指定域名對應的IP地址,
A記錄可以將多個域名解析到一個IP地址,但是不能將一個域名解析到多個IP地址。

MX記錄

MX表示Mail Exchange,就是可以將某個域名下的郵件服務器指向自己的Mail Server,
DNS會將郵件發送到MX記錄的服務器,而正常通過Web請求的話,仍然解析到A記錄的IP地址。

CNAME記錄

CNAME全稱為Canonial Name(別名解析)。
所謂別名解析就是可以為一個域名設置一個或者多個別名。

NS記錄

NS記錄,為某個域名指定DNS解析服務器,也就是這個域名由指定的IP地址的DNS服務器去解析。

TXT記錄

為某個主機名或域名設置說明。

CDN工作機制

CDN也就是內容分布網絡(Content Delivery Network),它是構筑在現有Internet上的一種先進的流量分配網絡。
其目的是通過在現有的Internet中增加一層新的網絡架構,
將網站的內容發布到最接近用戶的網絡“邊緣”,使用戶可以就近取得所需的內容,
提高用戶訪問網站的響應速度。

目前CDN都以緩存網站中的靜態數據為主,如CSS,JS,圖片和靜態頁面等數據。
用戶在先從主站服務器請求到動態內容后,再從CDN上下載這些靜態資源,從而加速網頁數據內容的下載速度。

CDN架構

一個用戶訪問某個靜態文件(如CSS文件),這個靜態文件的域名假如是cdn.jb51.net
那么首先要向Local DNS服務器發起請求,
一般經過迭代解析后回到這個域名的注冊服務器去解析,一般每個公司都會有一個DNS解析服務器。

這時這個DNS解析服務器通常會把它重新CNAME解析到另一個另外一個域名,
而這個域名最終會被指向CDN全局中的DNS負載均衡服務器,再由這個GTM來最終分配是哪個地方的訪問用戶,
返回給離這個訪問用戶最近的CDN節點。

拿到DNS解析結果,用戶就直接去這個CDN節點訪問這個靜態資源文件了,
如果這個節點中所請求的文件不存在,就會再回到源站去獲取這個文件,然后再返回給用戶。

到此,關于“瀏覽器緩存,DNS,CDN及域名解析的過程是怎樣的”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

肇东市| 习水县| 安吉县| 聂荣县| 云龙县| 绥德县| 东明县| 黑河市| 滦平县| 崇州市| 镇江市| 宜宾市| 漠河县| 绥江县| 霍州市| 建始县| 申扎县| 彭水| 陈巴尔虎旗| 张北县| 宿迁市| 鹿邑县| 金沙县| 米脂县| 绿春县| 安乡县| 赤壁市| 湘潭县| 建宁县| 宝清县| 和田市| 汉川市| 汝州市| 镶黄旗| 景泰县| 靖西县| 黎川县| 区。| 高淳县| 大关县| 海晏县|