對于絕大部分人來說,要獲得一臺高性能的電腦和一條穩(wěn)定的寬帶接入線路并不是太困難的事情,但是即使我們使用高速的光纖接入線路,但網(wǎng)上沖浪的速度也并不會比此前ADSL撥號快多少,這是因為在我們的網(wǎng)絡帶寬越來越高的同時,網(wǎng)站也變得更加復雜,而且由于相關的互聯(lián)網(wǎng)技術未能及時更新,所以網(wǎng)上沖浪時根本無法發(fā)揮接入線路升級所帶來的優(yōu)勢。不過,通過一些簡單的技巧,我們仍然能夠讓瀏覽器更快地下載并顯示網(wǎng)頁。下面,CHIP將會告訴大家如何利用這些技巧,盡可能地提升網(wǎng)上沖浪的速度。
當我們在瀏覽器地址欄中輸入一個地址或者點擊一個鏈接時,它首先將會被翻譯成IP地址,然后瀏覽器將建立一個TCP/IP連接并發(fā)送HTTP請求到Web服務器,在獲得響應后完成數(shù)據(jù)的渲染和顯示。在默認的情況下,幾乎所有的瀏覽器都是這樣工作的,下面,CHIP將告訴大家可以在哪一個環(huán)節(jié)進行適當?shù)母深A,盡可能地提高速度。我們將通過設置選項最豐富的Mozilla Firefox瀏覽器進行介紹,大家可以嘗試在微軟的Internet Explorer、Edge和Google Chrome瀏覽器下查找相應的設置選項。
1、選擇DNS服務器
互聯(lián)網(wǎng)接入服務提供商通常只是宣傳所提供的接入線路數(shù)據(jù)傳輸速率有多高,但其他的問題很少說明。實際上,對于網(wǎng)上沖浪來說,一項不怎么被注意的服務將產生很大的影響,那就是域名系統(tǒng)服務器(Domain Name System,縮寫DNS),該服務器負責將網(wǎng)站的域名解釋為網(wǎng)站主機的IP地址,因而在沖浪的過程中幾乎每一步我們都需要它,而且一個網(wǎng)頁有可能嵌入了幾十個其他網(wǎng)站的元素,這意味著打開一個網(wǎng)頁我們可能需要幾十次地查詢DNS,所以DNS的質量對于我們的沖浪速度有很大影響。
互聯(lián)網(wǎng)接入服務商提供的DNS服務器并不總是最快的,對于國外的用戶來說,Google的DNS服務器被認為是性能特別高的公共DNS服務器,此外,思科公司的OpenDNS也是一個不錯的選擇,但是國內用戶未必能夠使用這些DNS服務器,因而更適合我們的選擇是通過免費的工具軟件“Domain Name Speed Benchmark”(grc.com/dns/benchmark.htm)分析和查找最適合自己的DNS服務器。啟動軟件后在“Nameservers”選項卡上單擊“Run Benchmark”即可對軟件預設的一系列DNS服務器進行分析。而在“Nameservers”選項卡上單擊“Add/Remove”,在彈出的對話框中單擊選擇“Rebuild Custom List”,再單擊“Rebuild Custom List”按鈕,軟件將花費約30min的時間根據(jù)當前的網(wǎng)絡線路查找相關的DNS服務器,創(chuàng)建自定義的服務器列表,然后我們可以重新在“Nameservers”選項卡上單擊“Run Benchmark”執(zhí)行分析,找到我們使用起來最快的DNS服務器。接下來,打開“控制面板|網(wǎng)絡和Internet|網(wǎng)絡和共享中心”,單擊“查看活動網(wǎng)絡”下方當前使用的網(wǎng)絡連接,即可打開顯示該連接狀況的對話框。單擊“屬性”,雙擊“Internet協(xié)議版本4(TCP/IPv4)”,選中“使用下面的DNS服務器地址”即可鍵入新的DNS服務器地址。
2、加快域名解釋
當瀏覽器顯示一個帶有鏈接的頁面時,它會在后臺啟動DNS查詢這些鏈接的網(wǎng)址并緩存結果,這樣當我們點擊鏈接時將可以不需要查詢DNS而直接連接服務器。這種“DNS預取”的機制在所有的瀏覽器中都存在,不過,應用的方法和范圍不完全相同,通常也沒有為用戶提供自定義的選項。但是,在Firefox瀏覽器中我們可以進行一些簡單的配置,例如,設置允許對HTTPS頁面進行“DNS預取”。默認設置下瀏覽器不會對HTTPS加密的頁面進行“DNS預取”,因為預取雖然能夠帶來一些便利,但也存在一些風險,例如,垃圾郵件發(fā)送者可以通過在垃圾郵件中嵌入特定域名的鏈接,在用戶的瀏覽器進行“DNS預取”時即可識別用戶的電子郵箱是否屬于一個活躍的用戶。
如果希望允許對HTTPS頁面進行“DNS預取”,那么可以在Firefox瀏覽器地址欄輸入“about:config”,打開頁面并對安全警告進行確認。接下來,右鍵單擊選擇新建一個新的布爾值“network.dns.disablePrefetchFromHTTPS”,并將其設置為“false”。
3、保存DNS查詢結果更長時間
由于瀏覽一個網(wǎng)站通常會頻繁訪問一個相同的服務器,因而,所有的瀏覽器都會存儲DNS查詢的結果,以便在需要時可以直接使用而不必重新查詢,但是保存的時間通常很短。在Firefox瀏覽器中,我們可以增加緩存大小和延長保存的時間。在地址欄中輸入“about:config”進入設置頁面,在搜索欄中輸入“dns”并在搜索結果中雙擊“network.dnsCacheEntries”,將其設置為“800”,再雙擊“network.dnsCacheExpiration”,將其設置為“3600”。以這種方式,我們可以按照自己的需要增加緩存的條目,并將緩存的時間從幾分鐘延長到一個小時。但需要注意,如果我們需要訪問一些頻繁變更IP地址的網(wǎng)站,例如利用動態(tài)IP地址接入互聯(lián)網(wǎng)的線路架設的網(wǎng)站,那么緩存DNS時間過長,很可能會導致DNS查詢結果沒有刷新而無法找到網(wǎng)站正確的IP地址,此時,要適當?shù)亟档汀癲nsCacheExpiration”值。
4、避免修改TCP設置
Windows XP時代,人們使用ADSL需要通過修改操作系統(tǒng)的TCP設置來實現(xiàn)更快的數(shù)據(jù)傳輸,例如TCP接收數(shù)據(jù)的大小等,但是從Windows Vista開始,操作系統(tǒng)已經能夠根據(jù)連接的情況自動調整相關的數(shù)值,修改相關的設置很可能適得其反,因而,我們應該忘記那些過時的技巧,避免修改TCP設置,無論是手動還是使用相關的設置工具。
5、同時使用更多連接
同時使用更多的HTTP連接可以有助于瀏覽器并行下載更多的內容。在Internet Explorer中可以同時使用2個連接,GoogleChrome中可以同時使用6個連接,這些都是固定的,但在Firefox瀏覽器中我們可以修改這一數(shù)值。輸入“about:config”進入設置頁面,設置最大連接值“network.http.max-connections”為“400”和每一個服務器的最大連接值“network.http.max-connections-per-server”為“16”。設置完成后訪問幾個網(wǎng)站進行測試,如果出現(xiàn)網(wǎng)絡服務器拒絕連接的問題,則可以適當降低“network.http.max-connections-per-server”的值。
6、減少流水線等待時間
通常,瀏覽器只有在完成上一個請求之后才會向服務器發(fā)出另一個請求,但由于HTTP 1.1可以陸續(xù)發(fā)送幾個請求而無需考慮應答的問題,所以在Firefox中可以使用這種“流水線”功能提高速度,不過,默認情況下該功能是禁用的。輸入“about:config”進入設置頁面,在搜索欄中輸入“Pipelining”,雙擊“network.http.pipelining”,設置值為“true”。在我們的測試中,訪問各種熱門網(wǎng)站這樣設置沒有什么問題,但是一些過時的Web服務器可能不適合使用這樣的設置。為此,如果有必要的話我們可以創(chuàng)建另一個用戶配置文件(參考本文“相關信息”中的介紹),并保持該設置值不變。
7、通過網(wǎng)頁預讀取加速
Firefox擴展程序Fasterfox能夠比我們前面介紹的DNS預取更進一步:它可以在后臺讀取我們?yōu)g覽的網(wǎng)頁,并對網(wǎng)頁中鏈接的網(wǎng)頁進行預讀。這樣當我們點擊鏈接時,目標網(wǎng)頁已經在緩存之中,可以馬上顯示。我們可以通過“https://addons.mozilla.org/en-US/firefox/addon/rsccmanfasterfox/”安裝該擴展程序,并通過點擊Firefox菜單的“附加組件”,在“擴展”中點擊Fasterfox的“選項”按鈕進行配置,在打開的對話框中單擊切換到“Fasterfox”選項卡,選中“啟用增強預讀取”。需要注意的是,這種網(wǎng)頁預讀取的技術必然極大地增加數(shù)據(jù)流量,開啟前需要謹慎考慮是否會有什么問題,特別是在企業(yè)網(wǎng)絡或者多位家庭成員共享的家庭網(wǎng)絡使用時需要特別注意,更不適合用于通過流量計費的互聯(lián)網(wǎng)接入環(huán)境。
8、回收緩存數(shù)據(jù)
在我們?yōu)g覽的過程中,一個網(wǎng)站的許多標志和圖標都是相同的,它們頻繁地出現(xiàn)在同一個網(wǎng)站的不同頁面,為了避免總是下載重復的文件,所有的瀏覽器都會將近期下載的數(shù)據(jù)緩存起來,以便在需要時直接加載。一般的電腦通常瀏覽器默認設置的緩存已經能夠滿足這一應用需求,而且在Firefox中還可以自動地調整緩存的大小,例如,在電腦有4GB或以上的內存時,F(xiàn)irefox將自動地增加內存緩存的大小。
不過,如果我們確實有非常多的內存,那么瀏覽器64MB的內存緩存會顯得仍然有點小,可以輸入“about:config”進入設置頁面,將內存緩存大小的設置項“browser.cache.memory.capacity”設置為“131072”。此外,除了內存緩存,瀏覽器還在硬盤上設有硬盤緩存,硬盤緩存的管理相當復雜,最佳設置取決于以下條件:如果我們有一條接近專線的快速互聯(lián)網(wǎng)接入線路,打開網(wǎng)站幾乎馬上就出現(xiàn),那么我們應該停用硬盤緩存(“about:config|browser.cache.disk.enable = FALSE”),因為瀏覽器從硬盤緩存中獲取數(shù)據(jù)的速度比從網(wǎng)上獲取數(shù)據(jù)更慢。而如果互聯(lián)網(wǎng)連接速度僅有5Mb/s或者更慢,那么保留硬盤緩存是一個正確的選擇。如果雖然互聯(lián)網(wǎng)接入線路比較慢但使用的是快速的固態(tài)硬盤,那么可以嘗試將“browser.cache.disk.capacity”設置為“153600”,測試加大硬盤緩存是否能夠對重復訪問一個網(wǎng)站有幫助。需要注意,硬盤緩存永遠不要設置得太大,因為瀏覽器需要檢索緩存從中獲取數(shù)據(jù),緩存太大很可能適得其反。
9、阻止跟蹤和廣告
廣告和相關的跟蹤技術影響網(wǎng)頁的加載速度,為此,阻止跟蹤和廣告可以有效地提高沖浪速度,對于商業(yè)網(wǎng)站的效果最為明顯,加載速度可以快兩倍?;旧显跒g覽器上安裝Adblocker擴展程序,并設置使用適合本地區(qū)的過濾列表之后,用戶對于速度的提升都有明顯的感覺。通過瀏覽器擴展程序網(wǎng)站或者“adblockplus.org”安裝Adblocker,安裝之后在瀏覽器上打開Adblocker的設置選項頁面,設置啟用“EasyList China+EasyList”過濾列表(部分地區(qū)訪問更新列表的網(wǎng)站可能有困難),設置完成后打開經常訪問的網(wǎng)站,如果網(wǎng)站上原來的廣告比較多,那么我們馬上就能夠體驗到速度的變化。
10、加快顯示速度
一旦內容已經下載到瀏覽器,接下來必須保證瀏覽器能夠盡快渲染和顯示。Firefox可以一次處理多個網(wǎng)頁元素,默認設置下,它將等待250ms的時間開始顯示頁面內容。如果降低等待的時間(“about:config|nglayout.initialpaint.delay”的值從250修改到50),那么通常頁面顯示的速度會更流暢一些,因為頁面上的元素能夠更快地顯示出來。不過,我們也嘗試過將該值降低到0,但這并沒有發(fā)現(xiàn)進一步加速的效果。
在很多網(wǎng)頁上JavaScript是導致頁面顯示速度緩慢的罪魁禍首,但是如果我們使用NoScript之類的擴展程序阻止它們,那么一些網(wǎng)站可能會無法顯示某些內容,甚至有一些網(wǎng)站干脆無法正常顯示和工作。為此,如果希望使用NoScript,那么我們需要逐一地對我們經常訪問的網(wǎng)站進行測試,先設置阻止這個網(wǎng)站上所有的JavaScript,然后檢查網(wǎng)站上顯示的內容是否正常,應用功能是否仍然可以使用。