從用戶角度減少DNS查找。所有性能至關重要的Web頁面。減少下載頁面所需的DNS查找,不過要權衡考慮瀏覽器對同時連接的限制。DNS查找需要花費大量的時間,大量的DNS查找會影響用戶體驗。減少對象、任務、計算等都可以加速頁面載入,但同時也要考慮工作分解。
至此可見,減少就是提高性能和擴展性的代名詞。雖然許多原則針對的是軟件即服務(SaS)的架構,但這個原則考慮的則是客戶的瀏覽器。如果采用瀏覽器端的調試工具,如MozillaFirefoxI的插件Firebug9,那么在載入應用中的一個頁面時,你就會發(fā)現(xiàn)有趣的結果。最惹人注意的結果之是頁面中大小相近的對象下載的時長卻不一樣。進一步觀察,你會發(fā)現(xiàn)在開始下載對象之前,都有一個額外的步驟:DNS查找。
域名服務器(DNS)是因特網(wǎng)或其他采用TCP/IP協(xié)議的網(wǎng)絡最重要的基礎設施之一。它可以把域名(如www.akfpartners.com)翻譯成IP地址(如184.72.236.173),因此常常被比作電話簿。DNS是通過一個分布式數(shù)據(jù)庫系統(tǒng)維護的,該數(shù)據(jù)庫系統(tǒng)的節(jié)點是域名服務器。這種分層體系的最頂層是根域名服務器。每個域至少有一個權威的DNS服務器,用于發(fā)布關于該域的信息。
采用多層級緩存的方法可以加速把域名翻譯為IP地址,緩存可在瀏覽器、操作系統(tǒng)、因特網(wǎng)服務提供商等各級進行。不過,在現(xiàn)實世界中頁面上都有成百上千的對象,許多對象來自于不同的域,下載每個對象的時間雖然微不足道,但是累加起來形成的時間差就會引起客戶注意了我們深入討論如何減少DNS查詢之前,首先應該對大多數(shù)瀏覽器如何下載頁面有更多的了解。
這并不是說要深入研究瀏覽器,但是理解基礎原理有助于你優(yōu)化應用的性能和擴展性。幾乎所有的Web頁面都是由許多不同的對象(圖像、Javascript腳本、CSS腳本等)構成的,瀏覽器利用了這一點,可以同時連接下載多個對象。瀏覽器限制了對每個服務器或代理的大同時持續(xù)連接數(shù)。根據(jù)HTTP/1.1RFC規(guī)定,這個大連接數(shù)應該設置為2。但是許多瀏覽器都會忽略這個RFC,把大連接數(shù)設置為6或者更大。在下一個原則中,我們將介紹如何利用這個功能優(yōu)化頁面的下載時間?,F(xiàn)在,讓我們把重點放在可以分成多個對象,并通過多個連接下載它們的Web頁面。
Web頁面上的一個或多個對象可能屬于不同的域,每個域都需要在緩存或DNS域名服務器中進行DNS查找。
例如,假設一個簡單的Web頁面具有以下4個對象:
1)包含文本和其他對象相關指令的HTML頁面本身;
2)設置布局的CSS文件;
3)設置菜單項的Javascript文件;
4)JPG圖像。
HTML文件來自于我們的域(akfpartners.com),但CSS文件和JPG文件來自于子域(static.akfpartners.com)Javascrip文件則是鏈接到Google(ajax.googleapis.com)的。在這個例子中,測覽器首先政御訪www.akfnartners.com頁面的請求,這就需要對域akfnartners.com進行DNS查找。當把HTML文件下載到瀏覽器中后,瀏覽器解析發(fā)現(xiàn)需要從static.akfpartners.com下載CSS和JPG文件,這就需要另一次DNS查找。最最后,通過解析發(fā)現(xiàn)還需要從另外一個域下載一個外部的Javascript文件。依靠瀏覽器、操作系統(tǒng)等對DNS緩存的刷新,這些查找花費的時間最多只有幾百毫秒。
一個通用的
網(wǎng)站建設原則是,頁面上的DNS查找越少下載頁面的性能越高。但是,把所有對象都放在一個域中也有不利的一面,我們在前面關于大同時連接數(shù)的討論中就暗示過這一點。
網(wǎng)站名稱:減少DNS查找
網(wǎng)頁鏈接:http://www.rwnh.cn/news/141250.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供靜態(tài)網(wǎng)站、品牌網(wǎng)站制作、虛擬主機、網(wǎng)站設計、定制網(wǎng)站、外貿網(wǎng)站建設
廣告
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源:
創(chuàng)新互聯(lián)