Ⅰ iis應用程序池的查看與配置
在回收標簽,你可以設置工作進程的回收方式:
回收工作進程(分鍾):在工作進程運行多少分鍾後回收工作進程,默認啟用,並且設置為1740分鍾(29小時);
回收工作進程(請求數目):在工作進程處理多少 個HTTP請求後終止此工作進程,默認禁用,如果啟用則默認值為35000;
在下列時間回收工作進程:在指定的時間回收工作進程,默認禁用;如需啟用,勾選後點擊添加按鈕添加回收的時間即可,使用24小時制定義回收的時間;
消耗太多內存時回收工作進程:
最大虛擬內存(兆):當工作進程使用的虛擬內存達到設置的值時回收工作進程,默認禁用,如果啟用則默認值為500 M;建議設置為不超過虛擬內存總數的70%;
最大使用的內存(兆):當工作進程使用的物理內存達到設置的值時回收工作進程,默認禁用,如果啟用則默認值為192 M;建議設置為不超過物理內存總數的60%;
另外需要注意的是,應用程序池具有以下兩種工作進程回收方式,不過這兩種回收方式均不會造成Web服務的中斷:
默認情況下,應用程序池使用重疊回收方式。在這種方式下,當應用程序池要關閉某個工作進程時,會先創建一個工作進程,直到新的工作進程成功創建後才關閉舊的工作進程;
應用程序池也可以先關閉舊的工作進程,然後再創建新的工作進程。
如果Web應用程序不支持多實例運行,那麼你必須配置應用程序池禁止使用重疊回收方式。此配置無法在IIS管理控制台中進行修改,只能通過在metabase.xml中修改對應應用程序池的DisallowOverlappingRotation metabase屬性為true進行。 在性能標簽你可以設置工作進程的運行方式:
在空閑此段時間後關閉工作進程(分鍾):當工作進程空閑多少分鍾後關閉此工作進程,這降低了空閑工作進程對系統資源和CPU性能的消耗,默認啟用並且設置為20分鍾;
核心請求隊列限制為(請求次數):當HTTP.sys接收到某個客戶端發送的HTTP請求時,如果處理此請求的對應應用程序池的工作進程還處於忙狀態,則HTTP.sys將接收到的請求保存在對應應用程序池的請求隊列中,直到工作進程空閑為止。此選項即用於設置此應用程序池的請求隊列所能容納的請求數量,默認情況下每個應用程序池的請求隊列限制為保留1000個請求,如果超出則向客戶端返回503錯誤,你可以根據需要適當進行修改,最大可以設置為65535。但是如果設置太大則會消耗大量的系統資源 ,而設置太小會導致客戶端訪問時頻繁出現503錯誤。
啟用CPU監視:監視此應用程序池的CPU使用率,默認未啟用;如果某個應用程序池佔用的CPU利用率過多,那麼可以通過配置此選項來限制此應用程序池;
最大CPU使用率(百分比):所設置的應用程序池所能使用的最大CPU使用率;啟用CPU監視時默認值為100;
刷新CPU使用率(分鍾):刷新CPU使用率的間隔時間;啟用CPU監視時默認值為5;
CPU使用率超過最大使用率時執行的操作:當此應用程序池的CPU使用率超過所設置的最大CPU使用率時所進行的操作,啟用CPU監視時默認為無,此時IIS只是在事件日誌中進行記錄而不進行其他操作;如果選擇為關閉,那麼IIS將關閉此應用程序池中的所有工作進程;
Web園:在Web園中你可以配置此應用程序池所使用的最大工作進程數,默認為1,最大可以設置為4000000; 配置使用多個工作進程可以提高該應用程序池處理請求的性能,但是在設置為使用多個工作進程之前,請考慮以下兩點:
每一個工作進程都會消耗系統資源和CPU佔用率;太多的工作進程會導致系統資源和CPU利用率的急劇消耗;
每一個工作進程都具有自己的狀態數據,如果Web應用程序依賴於工作進程保存狀態數據,那麼可能不支持使用多個工作進程。 在運行狀況標簽你可以配置應用程序池監視工作進程的運行狀況,
啟用Ping:默認情況下應用程序池配置為每隔30秒Ping工作進程,當工作進程沒有進行響應時,則認為此工作進程出現故障並默認配置為關閉此工作進程。你可以修改Ping的時間間隔,但是太長的Ping間隔可能會導致Web服務的中斷,而太短的Ping間隔又會消耗更多的系統資源和CPU利用率,因此建議你保留默認配置;
啟用快速失敗保護:如果Web應用程序代碼編寫有問題,它可能會導致工作進程持續出現問題。默認情況下應用程序池配置為啟用快速失敗保護,當工作進程在配置的時間段(默認為5分鍾)內發生的失敗次數超過了配置的值(默認為5次),則禁用此應用程序池。
啟動時間限制:IIS等待屬於此應用程序池的工作進程啟動的時間,當工作進程啟用時間超出此設置值時,IIS會在事件日誌中進行記錄;
關閉時間限制:當IIS檢測到某個工作進程出現故障時,將此工作進程標記為關閉,此選項指定了IIS等待工作進程自動關閉的時間限制,如果超出此時間限制後工作進程尚未關閉,則IIS強行關閉工作進程。 在標識標簽,你可以配置工作進程所運行的用戶賬戶。在IIS 5或者當IIS 6運行在IIS 5隔離模式時,工作進程運行在本地系統賬戶,而運行在工作進程隔離模式下的IIS 6的工作進程運行在網路服務賬戶下,這降低了系統被攻擊的可能性。
你可以配置工作進程運行在預定義的本地系統、本地服務或網路服務賬戶下,也可以配置為使用某個自定義的用戶賬戶。建議使用默認的網路服務賬戶;不過如果為了更高的安全性,可以配置使用自定義的用戶賬戶,不過建議你只是將此自定義用戶加入到IIS_WPG用戶組中,因此IIS_WPG用戶組包含了可以啟動和運行工作進程的最小許可權。 要新建應用程序池,在IIS管理控制台中右擊應用程序池文件夾,指向新建,選擇應用程序池;
然後在彈出的添加新應用程序池對話框,在應用程序池ID欄輸入應用程序池名,然後選擇使用默認設置還是繼承現有的應用程序池設置,再點擊確定即可; 在IIS管理控制台中展開網站文件夾,右擊對應的網站,然後選擇屬性,在彈出的網站屬性對話框上,點擊主目錄標簽,然後在應用程序池欄選擇不同的應用程序池即可,默認情況下所有網站所使用的應用程序均名為默認應用程序,如果要想此網站使用不同的應用程序名,則在應用程序名欄修改即可,例如在此我就修改為winsvr,這主要是便於查看,然後點擊確定即可,
Ⅱ 伺服器CPU佔用過大,到底什麼原因啊,急求!!!
轉
伺服器正常運行CUP一般應該都在60%以下,有時候CUP出現上下波動很大,或者是伺服器突然很卡,或很慢.查看任務管理器,可以發現很多的w3wp.exe消耗CPU,結束後立即有新的w3wp.exe出現佔CPU,管管理員在這種情況.只好重新啟動IIS服務,奇怪的是,重新啟動IIS服務後一切正常,但可能過了一段時間後,問題又再次出現了。
直接原因:
有一個或多個ACCESS資料庫在多次讀寫過程中損壞,微軟的MDAC系統在寫入這個損壞的ACCESS文件時,ASP線程處於BLOCK狀態,結果其他線程只能等待,IIS被死鎖了,全部的CPU時間都消耗在w3wp.exe中。
解決辦法:1
在iis管理器裡面設置多個應用程序池, 並把虛擬主機站點分別加入應用程序池。在多應用程序池的情況下,每個應用程序池會對應生成一個w3wp.exe文件。通過任務管理器可以查看到所有w3wp.exe佔用cpu利用率情況。 通過iis管理器打開應用程序池,可以逐個停掉應用程序池。一邊停應用程序池,一邊在任務管理器裡面觀察哪個w3wp.exe的cpu利用率一下子從降下來,cpu利用率恢復正常。這樣可以判斷是那個應用程序池出了問題。然後可以再建立多個應用程序池,每一個應用程序池對應一個站點。這樣逐個停應用程序池,就可以確定到底是哪個網站出問題。最有問題的往往是計數器類的ACCESS文件,例如:「**COUNT.MDB」 ,「*COUNT.ASP」,找到這個文件後,可以刪除它,或下載下來,用ACCESS2000修復它,問題就解決。
解決辦法:2
w3wp.exe佔用cpu過高查詢方法,很多web提供商最頭疼的問題,在任務管理器經常出現w3wp.exe佔cup過高,導致整台伺服器受影響.解決辦法如下:
1.先把任務管理器打開,發現那個w3wp.exe佔cup關高就結束進程
2.在我的電腦-管理-事件查看器-系統-會找到關w3wp.exe的錯誤報告,把程序池名字記錄下,再把具體時間記錄下來.(如12.59.56).
3.在到系統上面的安全性.找到對應時間(如12.59.56)登陸過的用戶.
4.打開iis找到2中查詢到的程序池,和3查詢到登陸過的用戶,取交集,即可精確查到是那個web占點站cup.
還不明白,看這里:
http://sdseo.com.cn/yumingzhuji/200905091128.html
Ⅲ IIS7.5時常假死,怎麼解決
發現不少客戶都會遇到伺服器IIS出現假死的情況。為了能更好的為客戶服務,我查找了一些解決IIS假死的辦法僅供大家參考
打開IIS 你就會看到應用程序池,默認只有一個應用程序池,查看應用程序池的屬性,會發現他的回收時間,默認多達,1740分鍾,就是說,需要在1740分鍾後才回收此應用程序池,如果在這個時間內,達到請求的最高限制,那麼就會出現ASP假死的情況,這個就是大型網站出現假死的情況,反而,小型網站確不會出現這樣的情況,因為他請求少,流量少,還沒達到限制數量。當然要看你的伺服器上網站數目而定。
單個網站解決方法:
把應用程序池回收時間縮短到300-600分鍾,其間回收過程中,需要佔用一點CPU資源,沒辦法,為了穩定性,再把回收時間設為凌晨5點。
多網站解決方法:
假設一台伺服器目前拉了70個網站左右,那麼可以新建六個應用程序池,把每個池回收時間縮小到300分鍾,然後再分配每個池10個網站左右(這個分配是要求你的網站訪問量所定)如果某個網站,訪問量大,就單獨給他一個程序池,但是這樣做的後果就是需要大內存,一個池現在佔用120M內存左右,反正內存大,沒關系。那麼多網站如何分配應用程序池,打開IIS--查看你要分配的網站屬性,,查看主目錄--在下面 你就會看到應用程序池了,分配一個就行了。
大家在使用iis6時..如果裝了動網論壇.肯定有出現過iis6假死現像..就是asp網頁打開慢..但是iis卻是正常的..靜態網頁打開速度一樣..這時候..我一直是重啟的方法..查了官方的資料結果沒有...
據官方資料說..win2003很快就要打這個補丁了..是iis6對access驅動支持不理像..也算是一個bug吧..由於伺服器虛擬主機多..而且大多支持asp..如果一旦假死就無法運行..在多方面的資料查找下..找到了一個比較簡單的方法..具體測試是通過了..iis6自帶數據應用程序池..現在就利用他來解決假死..
首先把bbs設一個單獨的目錄..然後點擊應用程序池..新建應用程序池.輸入應用程序池id..
然後把bbs的虛擬目錄下面的.就用程序池..選擇剛才新建的應用程序池...
然後再回到剛才設好的應用程序池...點擊..屬性...把回收工作進程數(分鍾)及回收工作進程數還有在下列時間回收時間進程勾上..然後在下列時間回收程序池裡左邊添加..選擇一個時間..一般來說..網站到凌晨3點的時候.基本人都很少了..這時回收一下bbs的進程數..就可以解決了iis假死的現像..
當然還可以配置其他信息..比如說iis6的用戶名.. 我們可以打開計處機管理..然後打開計算機用戶管理..添加一個用戶..設置好後..在應用程序池裡面..標識..把添加的用戶放上去..用用戶來測試回收的進程..當然還有..其他配置..其實很簡單..只要你好好看一下..就能明白意思...
對於部分人來說..這種方法可能不太方便..所以可以用一個工具來回收應用程序池..這樣方便而且快捷..個人用戶當然不需要這種工具..公司用戶的話..伺服器壓力挺大..所以都用工具來解決一些問題.所括.iis的備分.及虛擬主機ip的統一修改及埠訪問的ip記錄..用批處理是一個很簡單又方便的方法.所以.把一台伺服器做的安全..並不是哪么容易的事..特別是iis..經常去官方網站搜索資料是一個好習慣..還有就是經常性的訪問日誌..及注冊表的用戶還有載入運行的程序.及服務也是一個好方法..所以.要學會如何遇到問題如何處理問題!!!!
推薦一個軟體 IIS守護程序 下載地址 http://www.jb51.net/softs/12793.html
解壓後雙擊IISHelper.exe運行,然後點右下角的開始執行即可!常來網也是用的這個,比較實用的小軟體。發現問題,就重啟iis,保證網站的正常運行。