web請求過程

2021-08-29 12:32:24 字數 2128 閱讀 1647

b/s兩方面好處:

客戶端使用統一的瀏覽器(browser)。瀏覽器統一性,遮蔽了不同伺服器提供商提供服務的差異性。並且,瀏覽器互動特性使瀏覽器使用方便,且使用者行為的可繼承性非常強。

服務端(server)基於統一的http協議。簡化服務提供商開發模式,規範伺服器開發者上午開發模式。

http協議採用無狀態的短連線的通訊方式。通常一次請求就完成一次資料互動,通常也對應乙個業務邏輯。

url請求dns把網域名稱解析成為ip位址,根據ip位址找到對應的伺服器,向伺服器傳送請求,伺服器返回資料資源給訪問的使用者。負載均衡給伺服器分配請求,請求資料儲存在分布式快取、靜態檔案、資料庫裡。靜態資源會發起額外的http請求,cdn伺服器處理這個請求。

網際網路應用原則:

瀏覽器建立socket連線之前,必須根據位址列裡的url的網域名稱dns解析出ip,根據ip位址和預設80埠與遠端伺服器建立socket連線,瀏覽器根據url組裝乙個get型別的http請求頭,通過outputstream.write傳送到目標伺服器,伺服器等待inputstream.read返回資料,最後斷開連線。

b/s網路架構中核心是http協議。

http協議中最重要的是http header。http header控制著使用者瀏覽器渲染行為和伺服器的執行邏輯。

ctrl+f5重新整理頁面一定能夠請求沒有快取的頁面。

ctrl+f5重新整理頁面,瀏覽器直接向目標url傳送請求,不使用瀏覽器快取。

ctrl+f5重新整理頁面,http請求頭增加一些請求頭,pragma:no-cache,cache-control:no-cache

pragmacache-control用於指定所有快取機制在整個請求/響應鏈中必須服從的指令。

expires:sar,25 feb 2012 12:22:17 gmt瀏覽器請求前檢查這個字段,是否過期,過期重新向伺服器發起請求。

last-modified/etaglast-modified表示乙個伺服器上的資源的最後修改時間。瀏覽器請求頭增加乙個if-modified—since:sar,25 feb 2012 12:22:17 gmt,詢問是否最新,是最新的返回304,也不會傳新資料。etag類似,讓伺服器給每個頁面分配唯一的編號,通過編號區分是否最新,比last-modified靈活,但多台後端伺服器不好處理。

瀏覽器檢查快取是否有網域名稱對應的ip。

瀏覽器查詢作業系統是否有對應的dns解析成果。

作業系統把網域名稱發給ldns,本地區的網域名稱伺服器。

ldns沒有,直接到root server網域名稱伺服器請求解析。ldns承擔了主要的網域名稱解析工作。

根網域名稱伺服器返回給本地網域名稱伺服器乙個所查詢域的主網域名稱伺服器gtld server位址。gtld國際頂級網域名稱伺服器,只有13臺左右。

本地網域名稱伺服器(local dns server)向gtld server傳送請求。

接受請求的gtld server查詢返回此對應網域名稱的name server網域名稱伺服器位址。你註冊的網域名稱伺服器,某台服務商申請網域名稱,網域名稱解析交給網域名稱伺服器。

name server網域名稱伺服器位址查詢網域名稱和ip對映關係表,連同ttl值返回給dns server網域名稱伺服器。

返回該網域名稱對應的ip和ttl值,local dns server快取這個網域名稱和ip對應關係,快取時間ttl值控制。

解析結果給使用者,使用者根據ttl值快取到本地系統中,網域名稱解析結束。

a記錄、mx記錄、cname記錄、ns記錄和txt記錄。

目標訪問靜態檔案,先向local dns伺服器發起請求,經過迭代到達網域名稱註冊伺服器解析,公司dns把請求重新cname解析到另外的乙個網域名稱,這個網域名稱指向cdn的dns負載均衡伺服器,由這個gtm分配使用者距離最近的cdn節點。如果這個cdn節點請求不存在,會再回原站獲取檔案,返回給使用者。

load balance對工作任務進行平衡、分攤到多個操作單元上執行。

鏈路負載均衡、集群負載均衡、作業系統負載均衡。

作業系統負載均衡:作業系統級別的軟中斷和硬體中斷。

在cdn的dns解析中通過動態的鏈路探測來尋找回溯最好的一條路徑,通過dns的排程將所有請求排程到選定的路徑上回溯。

Web請求過程

當使用者在瀏覽器中輸入乙個url 如www.baidu.com 進行網頁瀏覽時,將會發生一系列的操作。大致流程如下 1 網域名稱解析 當使用者輸入網域名稱後,需要將網域名稱轉換成正確的ip位址,才能夠訪問web伺服器。首先會查詢本地網域名稱hosts檔案,若存在對應網域名稱的ip位址,就直接使用。若...

WEB請求過程

一 乙個例子 當使用者在瀏覽器中輸入www.com這個url時,首先,dns會把這個網域名稱解析成ip位址,然後根據這個ip找到對應的伺服器,並發起乙個get請求,對於伺服器端而言,可能會有負載均衡裝置來平均分配使用者請求,而請求的資料可能在分布式快取裡,靜態檔案中,或是資料庫中,當資料返回給瀏覽器...

Web請求過程

從http結構到dns解析到cdn架構,了解web請求的具體過程。與傳統的c s架構的長連線互動模式不同,http採用了無狀態的短連線通訊方式。一次請求完成一次資料互動,然後斷開通訊。這樣做的原因是為了可以同時服務更多的使用者,不可能每次乙個使用者訪問一次就一直保持這個長連線。其實發起乙個http鏈...