日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

网页效率之DNS查找和并行下载

發布時間:2023/11/27 生活经验 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 网页效率之DNS查找和并行下载 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

?

雅虎的YSlow插件的規則之一: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.

?

說說自己的理解:

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

?

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

?

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

頁面所需訪問的域名數量,和瀏覽器所允許的最多連接數。

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

?

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

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

?

總結

以上是生活随笔為你收集整理的网页效率之DNS查找和并行下载的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。