服務器的w3wp.exe進程占用cpu100%的完美解決方案

开乐彩地址 www.tgbko.com 在IIS6下,經常出現w3wp.exe的內存及CPU占用不能及時釋放,從而導致服務器響應速度很慢。

解決CPU占用過多:
1、在IIS中對每個網站進行單獨的應用程序池配置。即互相之間不影響。
2、設置應用程序池的CPU監視,不超過25%(服務器為4CPU),每分鐘刷新,超過限制時關閉。

根據w3wp取得是哪一個應用程序池:
1、在任務管理器中增加顯示pid字段。就可以看到占用內存或者cpu最高的進程pid
2、在命令提示符下運行iisapp -a。注意,第一次運行,會提示沒有js支持,點擊確定。然后再次運行就可以了。這樣就可以看到pid對應的應用程序池。(iisapp實際上是存放在C:\windows\system32目錄下的一個VBS腳本,全名為iisapp.vbs,如果你和我一樣,也禁止了Vbs默認關聯程序,那么就需要手動到該目錄,先擇打開方式,然后選“Microsoft ® Windows Based scrīpt Host”來執行,就可以得到PID與應用程序池的對應關系。)
3、到iis中察看該應用程序池對應的網站,就ok了,做出上面的內存或CPU方面的限制,或檢查程序有無死循環之類的問題。

解決內存占用過多,可以做以下配置:
1、在IIS中對每個網站進行單獨的應用程序池配置。即互相之間不影響。
2、設置應用程序池的回收時間,默認為1720小時,可以根據情況修改。再設置當內存占用超過多少(如500M),就自動回收內存。
我的設置如下:
首先是對CPU的限制:在啟用cpu監視后,我設置該應用程序池最大的cpu使用率為50%。設置刷新cpu時間為1分鐘,設置操作為“關閉”。最大工作進程數設置為1。這個意思是,IIS刷新檢測該獨立池的CPU使用情況時間為1分鐘,如果超過設置的cpu限制50%,就會發出關閉池的指令,要求池在指定的時間內關閉。如果池成功在這個時間內關閉,IIS會重啟動一個新池,此段時間很短,一般不會有什么感覺,池就重新開啟了,對于訪問網站的人基本是不會有感覺的。但如果池沒有在指定時間內關閉,IIS就會強行關閉它一個刷新CPU時間。在這個停止的時間內,網站無法訪問,提示“Service Unavaliable”。

關閉時間和啟動時間間隔設置:設短一些比如10秒,這樣當您的網站程序大量占用系統資源時IIS自動快速回收進程并且快速啟動進程,您的網站暫時還可以將就著工作。

對內存的限制及進程回收時間的設置:我設置為內存占用超過800M就自動回收內存,虛擬內存沒有做限制。進程回收時間我保持默認沒有修改。各位可以根據自己的情況設置更短的時間。對應用程序池最大虛擬內存也可以在此進行設置,超過了設置的最大虛擬內存,該池會就被回收。

總結一些需要注意的問題:

1、 要限制一個站點的CPU使用,必須將該站點設置為獨立應用程序池,共用應用程序池是無法限制單個站點的。IIS獨立應用程序池,就需要獨立的進程,非常消耗內存。獨立池越多,就有越多的W3WP進程。對于每個站點均要獨立應用程序池的服務器,在一般的普通P43.0 2G內存 的普通服務器上,建議不要超過50個站點,最好30以內,不然服務器壓力非常大。在配置上,我一般把資源消耗較大的網站獨立一個池,一般普通BBS或者生成Html的系統大概5個站一個池。普通網站以及一些企業站點均共用一個池。

2、根據wlmmc的經驗,在服務器硬件允許的情況下,一般不要限制站點內存使用,這樣能夠保證網站運行,不會出現用戶掉線情況。需要限制某站的最大虛擬內存不要小于64M,不然可能出現一些未知的錯誤。

3、這些都不是根本解決辦法,它的根本問題是網站程序有問題,要解決根本問題還要從程序查起。根據本文開頭提到的方法查到具體的應用程序池,找到使用此應用程序池的網站,解決網站程序存在的問題,如死循環之類。

4、除了w3wp.exe, 在調用數據庫進行大量查詢操作的時候,也會大量占用CPU資源,這是難免的(數據庫方面的語句及結構優化不在本文討論范圍之內)。個人認為,只要不是CPU長時間占用100%, 一般在75%左右都是正常的。

網站建設能否先為客戶出設計效果圖?

“能否先做個效果圖給我們看看?”這是做網站建設的公司經?;嵊齙降目突岢齙奈侍?!

其實,這是一場博弈,如果提前做了效果圖,那么有三個結果:1、不滿意接著尋找下家網絡公司;2、滿意,還是接著尋找下家網絡公司或者個人,照著我們辛辛苦苦設計的效果圖,套程序;3、滿意,與我們簽合同付預付款,開始開發。我們都想要的是第3個結局,可是,往往不隨人愿!致使很多的網絡公司放棄這種賠了夫人又折兵的談判方式,寧可不做這個業務,也不愿意把自己陷入博弈的漩渦。

每個網絡公司都有自己的開發案例,每個案例都凝聚著設計師的心血,如果,案例仍無法使客戶相信公司的開發實力,那還有什么能做為建立雙方的合作契機呢?正如我們經?;崽降摹跋瘸黽父鏨杓菩Ч既夢頤強匆幌履忝塹目⑹盜Α被蛘摺骯プ齙煤彌荒艽砉サ氖盜?,我們要看現在的能力”之類的措辭,讓我們這些網絡公司很受“啟發”,對于這類的客戶,可能并未找到合適的談的來的合作伙伴,因此,我們寧愿退避三舍!并不是我們不愿意出圖,而是,付出的和所承擔的風險并不成正比,而且差的太多!

啟航遠翔給客戶一個選擇網絡公司的方法,如下

第一:判斷網站制作方的案例是不是其真實的案例,目前市場上有很多的網站制作方的案例都掛的是一些做工非常精美大氣的知名企業的網站以騙取客戶對他們設計水平的信任,其實知名企業的網站哪還需要找專業的網絡公司做,他們自己公司內部有專業的美工和程序員,根本就不用找網絡公司來做,所以凡是掛有知名企業的案例都值得懷疑,當然還可以通過查詢IP查詢進行對比或看看網站下方是否有技術支持也可以判斷是否屬于網站制作方的真實案例,當然如果不是真實的案例的話,則完全沒有必要浪費你的寶貴時間。

第二:了解他們的真實案例是否能體現出他們的設計水準,如果他們的真實案例設計的水平覺得還才以,那當然完全可以放心找他們合作。如果不是當然也沒有必要去找他們設計什么效果圖,即使他們答應給你們設計,大部分情況下也設計不出什么滿意的效果圖,這樣何必又浪費彼此的時間了。

第三:了解對方的程序開發能力,網站不僅僅需要進行頁面的設計還需要后臺程序的開發,即使對方有讓你心動的頁面設計,但是卻無強勁的程序開發實力,到頭來,會因為網站程序功能的不完善而導致你無法管理自己的網站,所以這樣的中看不中用的網站也會讓你大失所望,所以要想使自己有所保障,除了考查衡量網站制作方的設計能力之外還要考慮網站的程序開發能力。

以上是啟航遠翔多年總結出來的經驗,僅供參考,當然目前市場的競爭激烈,也會有一部分他愿意先出效果圖,但是僅僅只從效果圖來決定是否選擇對方,這顯然還不是周全之策,我們覺得,考查衡量網站制作方的設計能力與程序開發能力才是穩妥之舉。

因此,我們站在客戶的角度和網絡公司的角度來分析,給出了兩者皆能接受的談判方法,希望給客戶和同行的朋友們帶來幫助!