windows2003 IIS占用CPU資源100%的解決辦法
以下是方案1:
現(xiàn)象:機(jī)器正在調(diào)試或允許IIS時,被異常中斷服務(wù)(比如停電),然后再次IIS運(yùn)行頁面時,CPU資源占用100%,即使重新啟動也無效。
原因:發(fā)生中斷時,IIS會寫異常日志,但是此時寫入了亂碼,造成IIS一直寫日志的死循環(huán),耗盡了系統(tǒng)資源。找到系統(tǒng)路徑\System32\Logfiles\W3SVC1 下當(dāng)天的錯誤日志文件,即可看到以上內(nèi)容。
解決:刪除 系統(tǒng)路徑\System32\Logfiles\W3SVC1 下當(dāng)天的錯誤日志文件,如:ex060904.log,然后重新啟動IIS即可。
以下是方案2:
環(huán)境:win2003server+IIs+ASP+MSSQL
現(xiàn)象:每隔一段時間(不定,有時幾分鐘,有時半小時)出現(xiàn)一次網(wǎng)站打開非常緩慢,甚至有時會出現(xiàn)超時打不開站點,此時查看服務(wù)器端的進(jìn)程,CPU占用率達(dá)到100%,其中w3wp占用70~80%,SQL占用20~30%。所有服務(wù)器端的操作也變得緩慢
初期解決方法:每次現(xiàn)象出現(xiàn)時,立即登錄服務(wù)器直接結(jié)束w3wp進(jìn)程或重啟IIS服務(wù),平均每天約十次操作,由于服務(wù)器存放于遠(yuǎn)程機(jī)房,所有操作都是遠(yuǎn)程控制進(jìn)行,有時會因此出現(xiàn)遠(yuǎn)程無法連接登錄的情況,只能通過電話通知機(jī)房管理人員重啟服務(wù)器解決,此過程導(dǎo)致用戶抱怨不斷
經(jīng)過網(wǎng)上查閱資料,發(fā)現(xiàn)此類現(xiàn)象多數(shù)由于網(wǎng)頁代碼不合理所致,以下情況會導(dǎo)致此類現(xiàn)象發(fā)生:
1、代碼中多處使用application、seesion等服務(wù)器緩存,導(dǎo)致服務(wù)器資料過度占用;
2、代碼有不合理語法,死循環(huán)等;
3、數(shù)據(jù)庫損壞,尤其是ACCESS數(shù)據(jù)庫;
4、裝過多第三方軟件或插件,與IIS或網(wǎng)頁功能代碼沖突。
第一階段排查:根據(jù)查閱到的參考資料逐項分析
1、服務(wù)器上所有站點代碼均為公司設(shè)計人員自行編寫,可證實并無過多調(diào)用服務(wù)器緩存語法(排除)
2、代碼是否存在不合理語法(不確定)
3、根據(jù)情況來看,IIS進(jìn)程占用率升高時,SQL占用率同時升高,應(yīng)為SQL數(shù)據(jù)庫的站點,根據(jù)現(xiàn)象判斷,庫或表應(yīng)該正常,估計是數(shù)據(jù)方面可能有誤;(不確定)
4、服務(wù)器端除了基本的系統(tǒng)服務(wù),防殺毒及網(wǎng)站運(yùn)作必備服務(wù)之外,并無多余第三方軟件,機(jī)率不大(排除)。
經(jīng)過以上分析判斷,將不確定項連起來得出的結(jié)論是:某個采用了SQL數(shù)據(jù)庫的網(wǎng)站網(wǎng)頁代碼存在不合理語法,導(dǎo)致IIS和SQL進(jìn)程CPU占用率過高。
第二階段排查:
確定范圍,接著繼續(xù)把范圍縮小。
由于服務(wù)器上采用SQL數(shù)據(jù)庫的站點并不多,便于建立獨(dú)立進(jìn)程ID來觀察,將所有采用SQL數(shù)據(jù)庫的站點在IIS管理器中分別建立獨(dú)立的應(yīng)用程序池,然后通過CMD界面輸入:iisapp -a 命今查看并記錄下各IIS池的進(jìn)程ID號,通過多次現(xiàn)象重現(xiàn)時的觀察,有個IIS進(jìn)程ID是導(dǎo)致此次問題的罪魁禍?zhǔn)住?
以下是方案3:
在IIS6下,經(jīng)常出現(xiàn)w3wp.exe的內(nèi)存及CPU占用不能及時釋放,從而導(dǎo)致服務(wù)器響應(yīng)速度很慢。
解決內(nèi)存占用過多,可以做以下配置:
1、在IIS中對每個網(wǎng)站進(jìn)行單獨(dú)的應(yīng)用程序池配置。即互相之間不影響。
2、設(shè)置應(yīng)用程序池的回收時間,默認(rèn)為1720小時,可以根據(jù)情況修改。再設(shè)置當(dāng)內(nèi)存占用超過多少(如500M),就自動回收內(nèi)存。
解決CPU占用過多:
1、在IIS中對每個網(wǎng)站進(jìn)行單獨(dú)的應(yīng)用程序池配置。即互相之間不影響。
2、設(shè)置應(yīng)用程序池的CPU監(jiān)視,不超過25%(服務(wù)器為4CPU),每分鐘刷新,超過限制時關(guān)閉。
根據(jù)w3wp取得是那個一個應(yīng)用程序池:
1、在任務(wù)管理器中增加顯示pid字段。就可以看到占用內(nèi)存或者cpu最高的進(jìn)程
2、在命令提示符下運(yùn)行iisapp -a。注意,第一次運(yùn)行,會提示沒有js支持,點擊確定。然后再次運(yùn)行就可以了。這樣就可以看到pid對應(yīng)的應(yīng)用程序池。(iisapp實際上是存放在C:\windows\system32目錄下的一個VBS腳本,全名為iisapp.vbs,如果你和我一樣,也禁止了Vbs默認(rèn)關(guān)聯(lián)程序,那么就需要手動到該目錄,先擇打開方式,然后選“Microsoft (r) Windows Based Script Host”來執(zhí)行,就可以得到PID與應(yīng)用程序池的對應(yīng)關(guān)系。)
3、到iis中察看該應(yīng)用程序池對應(yīng)的網(wǎng)站,就ok了,做出上面的內(nèi)存或CPU方面的限制,或檢查程序有無死循環(huán)之類的問題。
相關(guān)文章

深度花園 Ghost Windows7 旗艦裝機(jī)版 2010(附可激活工具)
本系統(tǒng)以適合電腦公司和維護(hù)人員快速裝機(jī)為目的,以微軟090602官方發(fā)布的Windows XP SP3免激活VOL原版為母盤,精心制作而成,采用微軟內(nèi)部封裝技術(shù),實現(xiàn)Longhorn的detecth2010-04-06Windows Vista Ultimate SP1簡體中文精簡ghost極速安裝版下載
2008-09-08- 抵制微軟,支持開源。Ubuntu是從Debian Linux派生出來的Linux操作系統(tǒng)發(fā)布包。每6個月發(fā)布新的版本。使用 APT 包管理系統(tǒng)優(yōu)雅地解決了依賴問題,并且可以從容的在線安裝升級2008-11-03

QQ電腦管家 2合1殺毒版 v8.4(10040) 全面兼容windows8 中文官方安裝版
QQ電腦管家安全保護(hù)全面可靠可查殺能力全面升級,云查殺和可疑智能檢測技術(shù)二合一,強(qiáng)力查殺各類流行木馬。2013-09-04Solaris10之加載Windows/EXT等分區(qū)數(shù)據(jù)
1、下載工具包: FSWpart http://www.genunix.org/distribut ... iles/FSWpart.tar.gz FSWfsmisc http://www.genunix.org/distribut ... es/FSWfsmisc.t2008-09-08
竹林蹊徑 深入淺出Windows驅(qū)動開發(fā) 張佩等著 中文 PDF版 [106M]
本書是作者根據(jù)多年的工作學(xué)習(xí)經(jīng)驗,總結(jié)的第一手驅(qū)動開發(fā)資料。本書更多的是經(jīng)驗之談,一些實踐中的小發(fā)現(xiàn)小意外,頗為書中內(nèi)容添彩。2012-11-21
SQLite.exe(輕量級數(shù)據(jù)庫) v3.50.1 For Windows
一個Windows平臺上的命令行工具,用于執(zhí)行SQL語句、管理數(shù)據(jù)庫、進(jìn)行數(shù)據(jù)操作和維護(hù)等任務(wù)2025-06-14- WINDOWS7-7100RC簡體中文純凈安裝版封裝時用了最先進(jìn)的工具,所以鏡像大小:2.43G 說明一下幾點: 想裝雙系統(tǒng)或多系統(tǒng)用這個最合適 1、本鏡像由于制作時間短,安裝過程2009-07-13
- 據(jù)國外媒體報道,微軟新操作系統(tǒng)Windows 7發(fā)布期限日益臨近,業(yè)內(nèi)分析師認(rèn)為Windows 7雖然承載了許多期望,但是它要想獲得成功還必須解決下面一些問題.2009-10-18
windows vista X86 RTM/OEM 中文正式版下載地址
2008-09-08





