【正文】
下面也是原話Pls help to check the Run In Rack Job program . It will no response after running two or three days . the AP server Memory usage will over . after we close the the program , Memory will decrease to . 大致意思是:在服務器端(也叫后臺)自動跑的一只程式,運行了兩三天后,停止運行了。檢查Server的內(nèi)存使用率時,。 在關掉了這只程式后,… 進程請求過多,導致CPU無法及時處理,程序效率反應較慢。下面都是同事的原話:“年后產(chǎn)量逐漸增加,新的問題又出現(xiàn)了。從Server Performance上分析,和上次Memory過高不同的是CPU使用率過高。每當CPU過高的時候,產(chǎn)線會大面積的反應說慢(這點和連接到哪臺AP有關系)。每次慢的時候,我們就找到CPU過高的那臺AP,recycle IIS的application pool后就OK了。于是我么再次找到Bon幫忙分析(結論:微軟結案報告 20090226V1 SRT090119833891 Web service can39。t serve IISReset can )。并給出了開發(fā)程序時的一些建議。結論大致是說,沒有進程占用了特別高的CPU,也沒有進程占用CPU時間過長。只是對DB的請求的進程過多(比較吻合3廠的實際狀況—附件多,刷的快),加起來就整體過高。還發(fā)現(xiàn)了很多DLL是built in debug mode,這些DLL占用了過多的memory資源。后來根據(jù)Bon的建議,我們修改了IIS application pool的設定如下,解決過多請求不能及時處理,而造成CPU過高的問題。” 這里有一些問答關于應用連接池(Application Pool)的設定,對理解這樣的設置有一定的幫助:1. Is one application pool’s maximum memory usage ? Aamp。: Each application pool is a . is a process. Every process has 2 G User mode virtual address, so the maximum memory usage for application pool is 2G. However, you can’t make sure that there is no memory fragment issue. Therefore, Out of memory always occur after G according to our experience.2. Is each application pool independent on memory usage? Aamp。: Different application pools are different , so each application pool’s maximum memory usage is 2G.3. Can setup maximum CPU usage on each application pool?Aamp。: You can monitor it, but you can’t setup it.