昨天網(wǎng)站虛擬主機(jī)提供商發(fā)送提醒郵件說我的網(wǎng)站“如鵬網(wǎng)”流量超標(biāo)了,很奇怪,上個(gè)月流量用了一半多一點(diǎn)兒,這個(gè)月網(wǎng)站訪問量并沒有明顯的上升,怎么會(huì)這個(gè)月才過20天就流量超標(biāo)了呢?到網(wǎng)站后臺(tái)查看流量報(bào)表才發(fā)現(xiàn)agent.php消耗了31%的流量,將近1/3呀。
agent.php就是為
“如鵬助手” 提供數(shù)據(jù)的api頁面,默認(rèn)如鵬助手每10秒鐘就會(huì)向這個(gè)頁面請(qǐng)求最近50條新帖和50條新回復(fù)。當(dāng)時(shí)開發(fā)的時(shí)候也考慮過這個(gè)功能會(huì)不會(huì)對(duì)網(wǎng)站流量有非常大的消耗,但是當(dāng)時(shí)沒有進(jìn)行科學(xué)的計(jì)算,想當(dāng)然的認(rèn)為不會(huì)。但是現(xiàn)在仔細(xì)一算,50條新帖、50條新回復(fù)的信息估計(jì)有100K,那么每分鐘請(qǐng)求6次,假設(shè)每天監(jiān)控15小時(shí),每個(gè)月30天,那么一個(gè)月的流量就是100K*6*60*15*30=16200000k=16200M=
16.2G,恐怖呀!!!網(wǎng)站每月限定流量是45G,正好是16.2/45=36%,估算和報(bào)表中的31%差不多。
因?yàn)榫W(wǎng)站流量已經(jīng)超標(biāo),因此必須買額外的流量才能保證網(wǎng)站正常運(yùn)行,10G的流量一個(gè)月20元,買流量就要買足剩下10個(gè)月的,10個(gè)月就是200元,本來這部分花費(fèi)是可以避免的。當(dāng)初花幾分鐘算一下就不至于犯這種錯(cuò)誤!
不要再拍腦袋,要科學(xué)的計(jì)算!!!!!!!!!
為了減少如鵬助手流量消耗,我做了如下的優(yōu)化:
1、agent.php不再傳輸全部的帖子內(nèi)容,帖子正文只傳輸前50個(gè)字。
2、去掉agent.php傳輸帖子中的空格等無意義字符。
3、因?yàn)槿琦i網(wǎng)現(xiàn)在發(fā)帖量不大,沒必要每次顯示50條最新貼,因此改為只傳輸10條最新貼。
4、在agent.php頭部加入“Ob_Start('ob_gzhandler');”,也就是啟用GZip壓縮網(wǎng)頁,減少網(wǎng)頁的流量傳輸。
5、降低如鵬助手的刷新頻率,由10秒刷新一次改為60秒刷新一次
經(jīng)過本次優(yōu)化,10條新帖、10條新回復(fù)的信息估計(jì)有6K,6K*1*60*15*30=162000K=162M=0.162G。這樣流量消耗基本可以忽略不計(jì)了。
不要再拍腦袋,要科學(xué)的計(jì)算!!!!!!!!!