網頁訪問效能

來源:互聯網
上載者:User

標籤:style   blog   c   http   color   a   

一般使用者眼中,網頁訪問就是快與慢。下面對這個過程做一些定量分析。術語定義定義幾個術語:dnst:DNS查詢時間ct: 串連建立時間rt: 發出請求開始,到收到響應的第一個位元組的時間dt: 網頁內容下載時間plt: 網頁載入時間:從發出DNS請求到下載完頁面的整個過程的耗時
訪問網頁的過程如所示:
首先是DNS查詢,擷取要訪問的主機的IP地址。之後發送串連請求,通過三向交握同web伺服器建立起一個TCP串連。串連建立成功後,用戶端發送HTTP請求,Web伺服器解析請求,然後返回所請求的網頁。用戶端收完資料之後,通過解析、渲染把網頁呈現出來。響應的網頁載入時間就包括:dnst, ct, rt, dt。
DNS查詢時間url(網址)是為了協助人們記憶的,在應用中,首先要獲得IP地址才能發起串連,DNS查詢就是根據url獲得IP。這個過程是很耗時間的:在相對較快速的有線網路環境下,平均值為數十毫秒左右;2G網路環境下,平均值在幾百毫秒左右;在網路很差的移動環境下,平均值達到幾秒左右。
是有線網路下,收集的3天中的資料。可以看到,在網路空閑時段,dns查詢時間要低的多,而且比較穩定。移動網路下,該值要大的多,且波動較大

如果能省掉這一步驟,在移動網路下就能減少幾百毫秒的plt。這樣的改善是相當可觀的。用戶端往往會採用DNS預解析或想辦法在使用者訪問網頁時直接使用現成的IP地址來解決DNS耗時的問題。
ct(串連建立時間)ct時間實際上就是三向交握的時間,這個時間主要與用戶端與伺服器之間的距離有關,因此是相對穩定的。握手傳輸資料量也很小,因此也是幾個部分中耗時最小的。有線網路在30-40毫秒左右,移動網路在600毫秒左右

同樣,在移動網路下波動更大,如:
ct時間基本沒有改進的餘地(對用戶端開發人員而言)。能做的就是讓伺服器離用戶端近一點(CDN)。

rt(發出請求開始,到收到響應的第一個位元組的時間)

rt受到用戶端與伺服器之間的距離和伺服器負載有關,當然網路因素自不別說。伺服器負載大時,請求可能要過一段時間才能得到伺服器的響應,所以rt與時段的關係很大。在網路空閑時,會小得多。。rt是佔比最大的部分,如所示:

對於用戶端開發人員而言,你沒辦法控制影響rt的各個因素。我們能做點什麼呢?這時候緩衝發生作用了。一般而言,網頁上的很多資源都是重複引用的,比如多個網頁都用到了某張圖片,而且很多的資源在一段時間內是不會更改的,我們可以把它緩衝下來,等下次需要是可以直接從本地載入。使用者不需要感知這個過程,但網頁載入變快了, 流量也省了。據統計有60%左右的網頁資源是可以緩衝的。好的緩衝策略對提升網頁瀏覽體驗的效果最明顯。畢竟,最快的請求就是不發請求。
在有限網路下,平均rt時間又近200毫秒左右。移動網路下差不多要2秒左右。


dt(內容下載時間)dt其實是佔比很小的。與ct差不多。如:



四者之間的關係

從可以看到4 條線有大致相同的變化趨勢。其中ct 時間是最穩定的,這是因為ct 時間主要與伺服器與用戶端之間的距離有關。rt 時間是波動最大的,這是因為rt 時間主要與服務器負載有關。dns, ct, rt, dt 總體來講具有正向相關性,它們隨時間的變化趨勢總體上是一樣。意思是,一個部分快,其它部分也快。


聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.