發表于:2011-10-18 00:00:00來(lái)源:人(rén)氣:2420
出現這種情況是由于您的網站(zhàn)超過了系統資源限制造成的,主要是流量太大(dà)或者程序占用資源太多。
1、流量太大(dà)
比如(rú)您購(gòu)買的是C150空間,該主機(jī)的額定流量是15G/月。如(rú)果您的網站(zhàn)每月流量在15G,每天流量在0.5G以下,則應該能正常訪問(wèn)。如(rú)果連續幾天的訪問(wèn)量上升,流量超過0.5G/天,則該主機(jī)屬于超負荷運行。超負荷運行情況下,則會出現有時能正常訪問(wèn),有時被系統自(zì)動停止(Service Unavailable)的情況。解決辦法是:首先檢查RAR,MP3文件(jiàn)是否有盜鏈或者被大(dà)量下載,建議(yì)不要放(fàng)過多的流媒體(tǐ)文件(jiàn)。如(rú)果是流量自(zì)然增長,購(gòu)買的型号不能滿足要求,則需要對虛拟主機(jī)型号進行升級,以獲得(de)更多的流量配額。
2、程序占用資源過多
比如(rú)同樣是100人(rén)在線的論壇,雷傲論壇所占的資源就(jiù)是動網論壇所占資源的10倍以上;另外,一些死循環程序,或者不優化的程序(比如(rú)1.0版的阿江統計(jì)在數據庫太大(dà)的情況下)都(dōu)會占用太多的系統資源,而系統資源明顯是有限的。由于我們的新虛拟主機(jī)是采用WINDOWS2003的操作(zuò)系統,各網站(zhàn)之間是以獨立進程運行的,不會相(xiàng)互影(yǐng)響。
如(rú)果一個網站(zhàn)的程序占資源太多或者發生(shēng)太多的錯誤,系統日(rì)志就(jiù)會提示:“應用程序池 'zhaomupool11' 被自(zì)動禁用,原因是爲此應用程序池提供服務的進程中出現一系列錯誤, 或者提示:應用程序池 'hui999' 超過了其作(zuò)業限制設置。有關更多信息,請(qǐng)參閱在http://go.microsoft.com/fwlink/events.asp ;的幫助和支持中心。這時,訪問(wèn)這個網站(zhàn)就(jiù)會提示:Service Unavailable。一般系統會在30秒左右恢複正常,多刷新幾次就(jiù)能正常訪問(wèn)了。如(rú)果經常出現類似的錯誤,請(qǐng)及時優化網站(zhàn)程序,或者升級你(nǐ)的虛拟主機(jī)至更高的款型,以獲得(de)更多的系統資源。
程序占用資源太多的原因如(rú)下:
(1)有一個或多個ACCESS數據庫在多次讀(dú)寫過程中損壞,微軟的MDAC系統在寫入這個損壞的ACCESS文件(jiàn)時,ASP線程處于BLOCK狀态,結果其他(tā)線程隻能等待,IIS被死鎖了,全部的CPU時間都(dōu)消耗在DLLHOST(ASP進程)中。
參考解決辦法:
壓縮和修複我的數據庫
a.下載數據庫文件(jiàn)(如(rú)果是.asp的擴展名,請(qǐng)改爲.mdb的擴展名);
b.用ACCESS打開,選擇工(gōng)具,數據庫實用工(gōng)具,壓縮和修複數據庫;
c.改回.asp的擴展名,再上傳覆蓋原來(lái)數據庫文件(jiàn)。
(2)注冊了不良的Com組件(jiàn),特别是用VB開發的ACTIVE X控件(jiàn),可(kě)能導緻占用内存使用量不斷增長
參考解決辦法:盡量減少或避免非官方或是客戶要求的不必要的組件(jiàn)
(3)多媒體(tǐ)等文件(jiàn)下載占用服務器帶寬
參考解決辦法:停止下載
(4)程序問(wèn)題
需要及時的關閉不再使用的數據庫,以避免一直占用服務器資源。在conn.asp 連接數據庫字符串語句中加入如(rú)下 sub endConnection() conn.close set conn=nothing end sub
(5)上傳重要的數據庫等文件(jiàn)更新,由于正處于受訪問(wèn)狀态,可(kě)能導緻瞬間占用率上升
一般此情況較少,若有出現此情況時,可(kě)能有必要先暫停站(zhàn)點,再作(zuò)更新
(6)ACCESS論壇(如(rú)動網)大(dà)了以後就(jiù)很容易出現數據庫方面的問(wèn)題,當你(nǐ)的論壇數據庫在30M以上,帖子5萬左右,可(kě)能就(jiù)會出現數據庫吃(chī)不消的情況
(7)建議(yì)取消程序中使用的on error resume next這個容錯語句,對錯誤進行調試。
臨時解決辦法:定期删除多餘的數據、壓縮數據庫,限制論壇灌水,甚至限制論壇注冊。如(rú)果是動網論壇,可(kě)以使用論壇自(zì)帶的分(fēn)表儲存功能,會有較好的效果。比較長遠(yuǎn)辦法:更換論壇和數據庫,一般都(dōu)采用動網sql商業版本+MSSQL 的方案來(lái)解決。