在群里經(jīng)常有人詢問網(wǎng)站速度為什么這么慢的問題,這里我特地從中找出一個案例,一步一步找出網(wǎng)站速度慢的原因,希望看了文章的人能受到啟發(fā)。
一、測試網(wǎng)站速度,初步了解網(wǎng)站概況
首先測試網(wǎng)站速度如何,測試網(wǎng)站速度可以到卡卡網(wǎng)這里http://howtostagehomes.com/webcheck.aspx,下圖是該案例的網(wǎng)站速度表現(xiàn)情況。
圖一:測試網(wǎng)站速度
從圖中看到,網(wǎng)站內(nèi)容下載速率只有1點幾K,確實是太慢了,一般下載速率要達到50-100K才算過得去,超過100K的屬非常優(yōu)秀。
從圖中還看到,網(wǎng)站已經(jīng)啟用了GZip壓縮(如何檢測網(wǎng)站是否啟用GZip),壓縮后的體積有10206b字節(jié),平均打開時間有7.8秒。
該網(wǎng)站使用的是阿里云服務(wù)器,7.8秒算是很慢很慢了。
什么原因?qū)е戮W(wǎng)頁下載速率這么低呢?
二、查找網(wǎng)站速度慢的原因
到底是服務(wù)器的問題,還是網(wǎng)站自身的問題呢?現(xiàn)在還不能確定。
經(jīng)了解,網(wǎng)友這個網(wǎng)站首頁是動態(tài)的,它要每次打開都從數(shù)據(jù)庫讀取最新數(shù)據(jù)。是不是這個原因?
我于是叫網(wǎng)友把首頁另存為一張網(wǎng)頁,再測測看這張靜態(tài)網(wǎng)頁的打開時間是多少,下載速率是多少。結(jié)果如下圖所示:
圖二:測試網(wǎng)站速度
從圖中看到,下載速率明顯提高了很多,大部分地區(qū)都超過了100K,而平均打開時間更是達到了0.359秒的驚人速度。
這是動態(tài)網(wǎng)頁改為靜態(tài)網(wǎng)頁后的巨大差異。
三、問題解決方法
通過上述分析結(jié)果,知道網(wǎng)站速度慢,不是因為服務(wù)器性能不行,也不是帶寬不夠,而是網(wǎng)站自身的設(shè)計問題,網(wǎng)站動態(tài)網(wǎng)頁的速度超級慢,但網(wǎng)站靜態(tài)網(wǎng)頁的速度就非常優(yōu)秀。因此,解決方法可以從如下幾方面來入手:
1、把首頁動態(tài)改為靜態(tài)
事實上,大部分網(wǎng)站首頁都是靜態(tài)的,除非特別的原因,才需要把網(wǎng)站首頁做成動態(tài)的。
其實,如果需要及時更新首頁數(shù)據(jù),可以采用其他方法來實現(xiàn),比如在后臺定時生成靜態(tài)首頁,10分鐘生成一次,或者采用動態(tài)首頁緩存的方法,網(wǎng)頁緩存可以大大提高訪問速度,緩存的時間設(shè)為10分鐘。
2、數(shù)據(jù)庫采用獨立服務(wù)器
分析結(jié)果顯示,網(wǎng)站速度慢是因為動態(tài)讀取數(shù)據(jù)庫的數(shù)據(jù)造成的,因此,如果第一種方法行不通(例如你需要即時更新首頁數(shù)據(jù)),那么可以考慮數(shù)據(jù)庫與網(wǎng)站應(yīng)用程序不要放在同一臺機器,另外找臺性能比較好的服務(wù)器來運行數(shù)據(jù)庫,這樣將提高數(shù)據(jù)庫的讀寫能力,從而提高網(wǎng)頁的打開速度。
總結(jié)
本案例的分析過程,還算比較容易,如果上述分析還不能知道原因,比如網(wǎng)頁改為靜態(tài)后,問題照舊,那就要把問題的焦點集中在服務(wù)器性能、線路及帶寬上了,這需要更進一步的分析,可能需要更換服務(wù)器,或者增加帶寬才能解決問題了。請參看此文《網(wǎng)站速度慢?看看主機帶寬多少》
您可能對如下文章也感興趣
網(wǎng)站速度測試標(biāo)準(zhǔn)及滿意度分析