主頁 > 知識庫 > 網(wǎng)頁效率之DNS查找和并行下載

網(wǎng)頁效率之DNS查找和并行下載

熱門標簽:上海電銷卡外呼系統(tǒng)廠家 貴州全自動外呼系統(tǒng)廠家 威海人工智能電銷機器人系統(tǒng) 地圖標注員怎么去做 百度地圖標注備注 好看的地圖標注圖標下載 德州外呼系統(tǒng)排名 機器人電銷有什么用 福州外呼系統(tǒng)中間件
雅虎的YSlow插件的規(guī)則之一:Rule 9 – Reduce DNS Lookups提到:

Reducing the number of unique hostnames has the potential to reduce the amount of parallel downloading that takes place in the page. Avoiding DNS lookups cuts response times, but reducing parallel downloads may increase response times. My guideline is to split these components across at least two but no more than four hostnames. This results in a good compromise between reducing DNS lookups and allowing a high degree of parallel downloads. 

說說自己的理解:

首先,一個頁面所需要訪問的域名數(shù)量為n,那么就需要n次DNS查找,而DNS查找通常是blocking call,就是說在得到結果之后才能繼續(xù),所以越多的DNS查找,反應速度就越慢;

其次,并行下載(parallel downloading)由兩個因素決定:到服務器的連接數(shù)量,以及每個連接內(nèi)部的流水線請求數(shù)量。

一個頁面里到服務器的連接數(shù)量由兩個因素決定:

頁面所需訪問的域名數(shù)量,和 
瀏覽器所允許的最多連接數(shù) 
后者在Mozilla/Firefox中還由瀏覽器所允許最多連接數(shù)(network.http.max-connections,缺省為24),和每個服務器所允許的最大連接數(shù)(network.http.max-connections-per-server,缺省為8)決定。如果max-connection-per-server是m,那么一個需要訪問n個不同域名的主機的頁面,最多可以有n*m個連接 - 前提是n*m小于max-connections的值;

每個連接內(nèi)部的流水線請求(pipelined requests)的數(shù)量也是瀏覽器的參數(shù)(Firefox上由network.http.pipelining來設置,缺省為4),前提是服務器支持persistent connection(比如在Apache設置KeepAlive為On)。之前的例子就不需要那么多的連接了(對服務器和瀏覽器來說,一個連接里多個流水線請求能夠比多個并行連接更好些),假設pipelining的值為p,那么就可以只使用n*m/p個連接了。(BTW,對Firefox做優(yōu)化的一些插件其實就是對上面的幾個設置做調(diào)整)

所以減少頁面內(nèi)不同hostname的數(shù)量不一定會減少并行下載的數(shù)量,也要看所需要的請求(css, javascript, 圖片等)的數(shù)量,因此YSlow的解釋說是potentially。

標簽:撫州 岳陽 葫蘆島 白城 邵陽 南陽 泉州 南陽

巨人網(wǎng)絡通訊聲明:本文標題《網(wǎng)頁效率之DNS查找和并行下載》,本文關鍵詞  網(wǎng)頁,效率,之,DNS,查找,和,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《網(wǎng)頁效率之DNS查找和并行下載》相關的同類信息!
  • 本頁收集關于網(wǎng)頁效率之DNS查找和并行下載的相關信息資訊供網(wǎng)民參考!
  • 推薦文章