IIS worker process(w3wp.exe ) 占用CPU 100% 的常見(jiàn)原因及解決辦法
[重要通告]如您遇疑難雜癥,本站支持知識(shí)付費(fèi)業(yè)務(wù),掃右邊二維碼加博主微信,可節(jié)省您寶貴時(shí)間哦!
昨天一個(gè)很久的朋友找我說(shuō)他站出了問(wèn)題,CPU啥的都快滿(mǎn)核了~
觀察一番,一直是進(jìn)程w3wp.exe忽高忽低造成的,然后經(jīng)過(guò)各種查看,想確定是哪個(gè)站的問(wèn)題,畢竟站點(diǎn)挺多,
w3wp.exe忽高忽低解決辦法:
延伸閱讀:
對(duì)于IIS 管理員來(lái)說(shuō),經(jīng)常會(huì)碰到 Web 服務(wù)器 CPU 占用 100% 的情況,以下是個(gè)人的日常工作總結(jié)和一些解決辦法,主要用來(lái)剖析 w3wp.exe(IIS ) 占用 CPU 100% 的一些原因 和解決方案,希望能對(duì)你有所幫助
w3wp.exe的解釋 : 全名,IIS Application Pool Process。 w3wp.exe是IIS工具的一部。w3wp.exe是在IIS(因特網(wǎng)信息服務(wù)器)與應(yīng)用程序池相關(guān)聯(lián)的一個(gè)進(jìn)程,如果你有多個(gè)應(yīng)用程序池,就會(huì)有對(duì)應(yīng)的多個(gè)w3wp.exe的進(jìn)程實(shí)例運(yùn)行。這個(gè)進(jìn)程用來(lái)分配大量的系統(tǒng)資源。
引起 w3wp.exe(IIS ) Cpu 占用 100% 的常見(jiàn)原因如下:
1. Web 訪問(wèn)量大,從而服務(wù)器壓力大而引起的
這個(gè)也是最常見(jiàn)的情況。如果 Web 訪問(wèn)量大,特別是同時(shí)在線人數(shù)過(guò)多,處理的 Requests Current(當(dāng)前請(qǐng)求數(shù))過(guò)高,就會(huì)同時(shí)對(duì) IIS 和服務(wù)器造成較大的壓力。特別是 服務(wù)器需要不斷的運(yùn)算,往客戶(hù)端發(fā)送生成后的頁(yè)面,這些都需要占用大量的CPU 資源,從而造成 Cpu 100%
2. 動(dòng)態(tài)頁(yè)面(.aspx)的程序邏輯復(fù)雜程度
這個(gè)問(wèn)題,對(duì) w3wp.exe 的 CPU 占用 來(lái)說(shuō)也是蠻嚴(yán)重的,可能在訪問(wèn)量級(jí)比較小的情況下并沒(méi)有多少影響,但是在高并發(fā)的網(wǎng)站上面來(lái)說(shuō),特別是 Asp.Net 的 Requests Current 超過(guò)250 的時(shí)候,將會(huì)是 w3wp.exe 占用 CPU 的一個(gè)重要的因素。
我曾經(jīng)碰到過(guò)這樣一個(gè)情況,兩個(gè) web(A 和 B) 在兩臺(tái) 配置相當(dāng)?shù)?服務(wù)器中部署,且兩個(gè)站點(diǎn)的訪問(wèn)量都很大,訪問(wèn)頁(yè)面都集中在兩個(gè)站點(diǎn)的兩個(gè)單獨(dú)頁(yè)面,且這兩個(gè)頁(yè)面 的 IIS 連接數(shù)都是 50個(gè)左右,但是頁(yè)面程序的復(fù)雜程度就錯(cuò)了很多,A 站點(diǎn)中的頁(yè)面,只有幾個(gè) 簡(jiǎn)單的 Repeater 綁定, 而 B 站點(diǎn)中的頁(yè)面,則有大量的綁定、字符串過(guò)濾替換、Repeater 嵌套綁定等等。這樣的情況,在 大流量、高并發(fā)的環(huán)境中,A 站點(diǎn) 在 IIS 連接數(shù) 達(dá)到3 W 多的時(shí)候,CPU 占用仍然是 50 % 左右,而 B 站點(diǎn)在 IIS 連接數(shù) 達(dá)到 7K 左右的時(shí)候,CPU 就 90% 多了,造成了 服務(wù)器的壓力很大,并且 IIS 遭到了堵塞。
3. 頁(yè)面程序中有死循環(huán)
如果Web 訪問(wèn)量不大,但是 CPU 卻占用很高,那么頁(yè)面中的程序肯定有死循環(huán)或者性能比較嚴(yán)重的 程序語(yǔ)句
4. Http方式下載的站點(diǎn)
如果站點(diǎn)是HTTP形式下載站,也遇到過(guò) w3wp.exe 占用 CPU 100% 的情況
5. 服務(wù)器資源不會(huì)自動(dòng)釋放
有時(shí),一個(gè)站點(diǎn)的流量在一個(gè)小時(shí)內(nèi)陡增,結(jié)果操作系統(tǒng)分配了比較多的 CPU 資源,但是當(dāng)流量下去后,w3wp.exe 占用的 CPU 并沒(méi)有及時(shí)釋放,仍然在保持在 90% 以上
6. 對(duì) IIS 日志文件操作
比如此時(shí)分析 IIS 日志文件里面的數(shù)據(jù),把 IIS Log 日志導(dǎo)入到數(shù)據(jù)庫(kù)中等操作,也會(huì)造成此現(xiàn)象;
問(wèn)題未解決?付費(fèi)解決問(wèn)題加Q或微信 2589053300 (即Q號(hào)又微信號(hào))右上方掃一掃可加博主微信
所寫(xiě)所說(shuō),是心之所感,思之所悟,行之所得;文當(dāng)無(wú)敷衍,落筆求簡(jiǎn)潔。 以所舍,求所獲;有所依,方所成!