1. 程式人生 > >網頁瀏覽速度慢的排查原因

網頁瀏覽速度慢的排查原因

網站訪問速度的快慢直接決定網站的命運,現在站長們也越來越關注網站的訪問效能。如果網站開啟慢將流失大量使用者,造成巨大損失;如果網站伺服器覆蓋廣,網站訪問速度很快,很容易吸引使用者,提高訪問量,當然銷售業績也蹭蹭上升。相信大都數人曾飽受網站載入過慢的煎熬,為讓大家不再為此而困擾,現分析網站訪問速度慢的影響因素,提供幾條故障排查的經驗供參考:

1.訪問者本地網路因素

1)自身網路限制,自己網路頻寬本來就小,開啟網頁當然要慢的。

   解決方案:先對本地網路進行測速,一般頻寬在8M以上,訪問速度可達到40KB/s,這個速度可能沒概念,舉個例子,8M的頻寬開啟百度首頁只需1s.

2)本地DNS配置問題,如果訪問網站的出口DNS是網通,使用者配置的本地DNS為電信,則開啟網站的速度就會受限。

   解決方案:修改本地的DNS配置,將本地的DNS改成網通的,與出口DNS一致,網站訪問速度也會提升

2、網站自身因素

1)網站效能瓶頸也是導致網站速度慢的重要因素

網站效能差的表現有以下幾種:

a)過大的圖片

   使用過大的圖片,造成整個網頁變大,開啟慢,建議使用GIF影象,不要使用JPG。

b)較大的flash或影音檔案

   可能會把潛在客戶拒之門外:潛在客戶可能不希望安裝顯示或執行Flash所需的外掛,或者找不到進入/返回網站其它頁面的連結,而放棄瀏覽您的網站。

c)網頁內容的大小(重要)

   網頁檔案的大小是網站是否能快速開啟最重要一個因素,如果說伺服器等硬體方面我們決定不了,我強烈建議從這裡下手,不管是表格還是DIV+CSS,適當的優化程式碼,都能減少網頁大小。

   儘量優化程式碼,用最少的程式碼,冗餘程式碼也是拖慢網站速度之一。

d)大量資料庫操作

   小網站在執行大量資料庫操作時,也會影響網站開啟速度,這裡使asp+access結構的網站尤為明顯,尤其是同時有大量使用者提交評論時,就操作資料庫鎖死,導致網站打不開。

e)用很多javascript

   網站上使用大量JS是大忌,不僅搜尋引擎無法收錄,同時會不斷提交請求增加伺服器負擔,例如滑鼠特效、欄目的特效、狀態列的特效等等。這些特效的原理是先由伺服器下載到你本地的機器,然後在你本地機器上執行產生,然後你才能看到的。特效做的多了,在你本地機器上就要執行大半天才能全部完成,而如果你的主機配置一般的話,那就更慢了。所以,建議一定要少用javascript特效。

解決方案:執行網頁效能檢測,如單檔案檢測、全頁面檢測,查詢網頁效能瓶頸,優化網站,提升體驗。

   國內常用的網頁效能檢測的工具有:網速通(網宿科技出品,支援多平臺,web/IOS/android,監測點覆蓋全球、全運營商,推薦使用);17測(上海雲測網路出品,支援web,節點少,有廣告,不推薦);奇雲測(360公司,支援web,有廣告,不推薦);阿里測(阿里出品,總出現“檢測頻率過高”的提示,不愛)

2)區域覆蓋問題,網站伺服器在北京,在北京開啟該網站可能很快,而在廣西的使用者的訪問速度卻很慢。

   解決方案:1.站長給網站做CDN加速;2.站長在各地增加伺服器,增加覆蓋。顯然第一種方式比較節約成本,不僅減少運維壓力,還提高網站負載,保護源站免受攻擊。

3、伺服器的原因

1)伺服器採用國外空間說是是國內的

解決方案:站長在購買的時候核實伺服器空間

2)伺服器超負荷:本來一臺伺服器可以放200個網站,為了滿足自己的利益多增加了100造成整臺服務開啟慢。

解決方案:站長需做壓力測試,預留一定空間

3)伺服器配置過低:包括伺服器端與客戶機端的硬體配置程度,同樣的網路環境下,雙核的伺服器的運算能力肯定要強一些,毫無疑問的,同樣的網路環境下,你用一臺賽揚的機器和奔四雙核處理器的電腦,開啟同樣的網頁,速度,也肯定不一樣。

解決方案:升級配置

4)DNS解析時間:DNS解析慢,造成網站開啟延遲

解決方案:、縮短DNS解析時間的方法:用DNS快取、DNS預讀取、拆分域名來減少域名DNS解析的時間的方法,對於一般的網站的加速效果可能並不明顯,但是對於一些每天DNS請求達到上百萬級以上的網站,DNS加速的效果就顯而易見了。另外,如果發現自己的網站響應速度過慢,不妨好好檢查一下網頁的DNS解析耗時。

網站無法訪問時,如何快速排查,也是站長十分關注的問題,下面藉助網速通APP為大家介紹常見故障診斷的方法:

1、Ping命令(時延、丟包率)

這個是大家通常採用的命令,介紹幾個常用的ping功能:

ping網址:檢視網址的連通性,看訪問網站丟包及時延

Ping 127.0.0.1,該地址是本地迴圈地址,如發現本地址無法Ping通,就表明本地機TCP/IP協議不能正常工作。

Ping使用者IP,通則表明網路介面卡(網絡卡或MODEM)工作正常,不通則是網路介面卡出現故障。

Ping一臺同網段計算機的IP,不通則表明網路線路出現故障。

2、dig/nslookup命令(DNS解析)

dig (域資訊搜尋器)命令是一個用於詢問 DNS 域名伺服器的靈活的工具。它執行 DNS 搜尋,顯示從受請求的域名伺服器返回的答覆。多數 DNS 管理員利用 dig 作為 DNS 問題的故障診斷,因為它靈活性好、易用、輸出清晰。

dig/nslookup 網址:查詢DNS解析的全過程,獲取解析IP

3、Traceroute(路由連線)

用於檢查您本地裝置傳送資料包到遠端伺服器所經過所有閘道器的地址及時間。 使用這個命令,可以檢查訪問伺服器是因為哪裡的閘道器速度慢而影響了訪問速度。

traceroute 網址:檢視那個節點出了故障