上個月五號把blog系統換成wp後流量大增,原本一個月只耗費幾百MB的mt,換成wp後,上個月的總流量居然高達4.5g,差點破表,在cpanel裡查看每天的大約流量,大概從30MB到50MB左右,最高一天曾達到70多MB,所以我開始追蹤流量大增的原因。
第一個先想到垃圾迴響的問題,但自從換了wp後,可能page rank還不夠高,所以垃圾機器人還不太想理我,而且後台還有Akismet擋著,所以這個原因先行排除。
接下來是圖片問題,但也是最不用考慮的部份,因為現在幾乎所有的圖片都放在Flickr,少部份放在ImageShack,所以圖片的流量不成問題。
最後我才考慮到wp和mt網頁生成狀態的不同,mt預設是生成靜態網頁,所以每一次修改網頁模版後,都得重建網頁;但wp則是生成動態網頁,一旦網頁被讀取後,程式會自動從資料庫中將所需資料取出,然後生成網頁傳送到使用端,wp的好處就是不用一直不斷的重建網頁,但壞處就是增加伺服器的負擔。
因為考慮到這點,我才知道為何流量大增的原因。單純就blog的頁面文字而言是無法造成這麼巨大的流量,尤其是我這個名不見經傳的小blog來說,但主機商那邊的流量計算方式可能不只是網頁的傳輸量,而是包括了資料庫存取量,所以每一次wp的網頁被讀取時,伺服器就會讀一次資料庫,網頁開多少次,它就讀取多少次,所以流量才會這麼驚人,這可是我租用主機以來,最龐大的使用量了!已經詢問過主機商,他們說沒把資料庫流量算在其中,那也許有可能是spambot的關係,改用wp之後,雖然wp本身沒有多少spam侵入,但根據紀錄,倒是有不少spam仍舊對著舊mt的路徑發佈垃圾迴響,今天先把Bad-Behavior裝上,直接杜絕這個spambot,再看看成效如何。
昨晚先把經常讀取資料庫的外掛WP-UserOnline給停用,然後減少首頁的文章數(從十篇改為五篇),另外裝上wp-cache,它可以幫助wp生成暫時性的靜態網頁,可設定多久更新一次,在這期間來瀏覽網頁的人,就會優先從靜態網頁中讀取,而不是直接從資料庫存取,增加網頁讀取速度及減少對資料庫的存取次數。(2006.7.9 updated)
剛剛在後台看了一次流量,果然減少了約一半左右,不這麼動點手腳的話,我租用的一點點頻寬很快就會被塞爆了。事實上差別並不大,所以真的跟資料庫無關,但裝上了之後,瀏覽速度快了些。(2006.7.9 updated)
上網查了查,好像沒人提到這個問題,還是大家的主機商都不是這麼算流量的?或者都自架伺服器?
反正流量都這麼多了,也不差一個UserOnline~->_<-
啊哈~~UserOnline 又活过来了~
那些日誌都看過了,實在找不出什麼規律性的訪問,索性不找了,頻寬要爆就給它爆吧!
不過,還是謝謝你!