Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> 電腦軟件教程 >> 服務器技術 >> Web服務器 >> 解決IIS假死的方法

解決IIS假死的方法

日期:2017/1/21 9:36:21      編輯:Web服務器

在使用IIS過程中,出現假死的情況,可以來看看本文是如何來解決的。IIS日志:

  應用程序:ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' 報告它自身有問題,原因如下: 'ASP 不正常,因為執行請求的 100% 被掛起,而且請求隊列已經使用了 0%。'。

  關於server 2003+IIS6 出現 'ASP 不正常,因為執行請求的 100% 被掛起

現像如下:
站點無法打開,或者打開很慢.HTML可以打開.重新啟動或者回收應用程序池可恢復.但過一段時間又會出現

日志裡會有:
ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' reported itself as unhealthy for the following reason: 'ASP unhealthy because 100% of executing requests are hung and 6% of the request queue is full.'.

或者:
ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' 報告它自身有問題,原因如下: 'ASP 不正常,因為執行請求的 100% 被掛起,而且請求隊列已經使用了 0%。'。

解決方法:

  1.asp是否正確映射到'C:\WINDOWS\system32\inetsrv\asp.dll'

  2.一般來講,是由於在同屬IIS的應用程序池出現了某個站ASP代碼錯誤所致,使得內存耗盡,檢查代碼本身的問題.可以隔離到單獨應用程序池 調試

  3、減少應用程序池回收時間。默認為:1740。。可設為120(每2小時)

IIS假死的原因:

  打開IIS 你就會看到應用程序池,默認只有一個應用程序池,查看應用程序池的屬性,會發現他的回收時間,默認多達,1740分鐘,就是說,需要在1740分鐘後才回 收此應用程序池,如果在這個時間內,達到請求的最高限制,那麼就會出現ASP假死的情況,這個就是大型網站出現假死的情況,反而,小型網站確不會出現這樣 的情況,因為他請求少,流量少,還沒達到限制數量。當然要看你的服務器上網站數目而定。

以下是解決方法:

  資料一

  單個網站解決方法:
把應用程序池回收時間縮短到300-600分鐘,其間回收過程中,需要占用一點CPU資源,沒辦法,為了穩定 性,再把回收時間設為凌晨5點。

多網站解決方法:

  視服務器網站的多少,新建多個應用程序池,把每個池回收時間縮小到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..經常去官方網站搜索資料是一個好習慣..還有就是經常性的訪 問日志..及注冊表的用戶還有加載運行的程序.及服務也是一個好方法.

Copyright © Windows教程網 All Rights Reserved