IIS假死的解决方法 缩短IIS应用池回收时间来实现减少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..经常去官方网站搜索资料是一个好习惯..还有就是经常性的访问日志..及注册表的用户还有加载运行的程序. 及服务也是一个好方法.

(0)

相关推荐

  • asp运行特别慢之iis6假死现象的一种解决方法

    前段时间被WINDOWS2003SERVER的IIS6.0假死问题差点搞死了,琢磨了N个通宵之后才磨出了办法,下面的东西希望能给有相同问题的朋友些帮助: 大家在使用iis6时..如果装了动网论坛.肯定有出现过iis6假死现像..就是asp网页打开慢..但是iis却是正常的..静态网页打开速度一样..这时候..我一直是重启的方法..查了官方的资料结果没有...据官方资料说..win2003很快就要打这个补丁了..是iis6对access驱动支持不理像..也算是一个bug吧..由于我的服务器虚拟主机

  • IIS应用程序池自动停止 关闭 假死 处理集锦

    1:没有打SP1补丁的时候会出现这个IIS6.0假死问题,但现在微软都在自动更新里面出补丁了,一般你打好最新补丁后是不会出现此问题了 2:你限制了应用池 的资源过小 3:你限制了内存使用 4:就是服务器自身内存太小 5:就是ACCESS数据库太大或查询太多 6:不同网站用不同应用池 7:设置回收时间,很多人以为设置回收池越短越好,其实是错误的 8:windows 2003系统iis6访问本机的站点时提示"Service Unavailable": 查看iis的应用程序池,状况提示为:未

  • Win2003 IIS 6.0 假死问题解决方法 图文教程

    问题的原因最终找到两个: 1.采用的jet 数据库连接方式存在问题:http://support.microsoft.com/?id=838306 补丁文件 中文版:WindowsServer2003-KB838306-x86-chs.exe 英文版:WindowsServer2003-KB838306-x86-enu.exe 2.将 Access 数据库扩展名改为 asp 下面是差错过程和解决方案: 搜索一下发现类似问题还真不少,那个w3wp的进程是iis6.0的应用程序池,网上的说法有两种,

  • win2003 iis6 iis假死

    IIS日志: 应用程序:ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' 报告它自身有问题,原因如下: 'ASP 不正常,因为执行请求的 100% 被挂起,而且请求队列已经使用了 0%.'. 关于server 2003+IIS6 出现 'ASP 不正常,因为执行请求的 100% 被挂起 现像如下: 站点无法打开,或者打开很慢.HTML可以打开.重新启动或者回收应用程序池可恢复.但过一段时间又会出现 日志里会有: ISAPI 'C:\WINDOWS\syste

  • 服务器iis假死的原因及解决方法

    打开IIS 你就会看到应用程序池,默认只有一个应用程序池,查看应用程序池的属性,会发现他的回收时间,默认多达,1740分钟,就是说,需要在1740分钟后才回收此应用程序池,如果在这个时间内,达到请求的最高限制,那么就会出现ASP假死的情况,这个就是大型网站出现假死的情况,反而,小型网站确不会出现这样的情况,因为他请求少,流量少,还没达到限制数量.当然要看你的服务器上网站数目而定. 单个网站解决方法: 把应用程序池回收时间缩短到300-600分钟,其间回收过程中,需要占用一点CPU资源,没办法,为

  • IIS假死的解决方法 缩短IIS应用池回收时间来实现减少IIS假死

    IIS日志: 应用程序:ISAPI 'C:\WINDOWS\system32\inetsrv\asp.dll' 报告它自身有问题,原因如下: 'ASP 不正常,因为执行请求的 100% 被挂起,而且请求队列已经使用了 0%.'. 关于 server 2003+IIS6 出现 'ASP 不正常,因为执行请求的 100% 被挂起 现像如下: 站点无法打开,或者打开很慢.HTML可以打开.重新启动或者回收应用程序池可恢复.但过一段时间又会出现 日志里会有: ISAPI 'C:\WINDOWS\syst

  • WIN2003 IIS相关错误的解决方法

    我碰到的主要问题是:"Server Application Unavailable 错误"."无法显示网页": 1.如果你的.NET版本是2.0及以上的话,那要注意了:win2003是默认安装1.1的,安装.NET2.0 后,可能会程序应用程序池冲突,具体查看这篇问题:服务器应用程序不可用(server application unavailable)的解决办法 , 用cmd指令打开这个路径:C:\WINDOWS\Microsoft.NET\Framework\v(

  • 先装VS再装IIS时出错的解决方法

    原来在安装 Microsoft .NET Framework 软件开发工具包 (SDK) 或 Visual Studio .NET 之后,会创建 Internet 信息服务 (IIS) 映射,以便为 ASP.NET 的新文件扩展名及设置建立关联.如果在运行 SDK 或 Visual Studio 安装程序时没有安装 IIS,或是在运行 SDK 或 Visual Studio 安装程序之后卸载并重新安装了 IIS,那么这些设置将不正确.试图查看 ASP.NET 页时会遇到意外现象. 其中就包括,V

  • Apache与IIS共用端口的解决方法集

    经过一阵稳定性的考虑后,公司的网站决定采用IIS作管理平台,Apache做访问平台,但服务器对外开放的端口数实在太少,如何使Apache和IIS共用一个端口,而两者兼顾?Google一下,找到以下方法,开始实践.... 为调试程序,本机安装iis与apache,无法同时使用80端口,现给出解决方法: 方法一:原文地址 IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 c:\Inetpub\Adminscriptscscript adsutil.vbs 

  • 关于访问IIS元数据库失败的解决方法

    解决方法如下: 1.依次点击"开始"-"运行". 2.在"运行"栏内输入 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i "(不含引号),然后点"确定"按钮. 3.出现的cmd窗口中显示"开始安装ASP.NET XXX"等内容,等待这个窗口自动关闭. 好了,到这里一般问题就解决了,如果尚未解决请参考下

  • Serv-U占用IIS的80端口造成冲突导致iis无法运行的解决方法(serv_u6-8版本)

    我们是怎么发现serv_u占用iis的80端口的呢,大家可以参考我们的这篇文章IIS 另一个程序正在使用此文件,进程无法访问. 如何查看哪个程序打开了tcp 80端口呢?使用"开放端口查看软件Active ports"就可以一目了然了. 下面是具体的解决方法:serv_u 6版本:大家可以通过设置下 pasv端口范围即可.serv_u 7-8版本 很多人在安装的时候没太注意,默认情况下开启了80和443端口的监听,如果你的这台服务器上有IIS在运行的话,便会造成冲突.冲突的现象表现在两

  • C# WinForm程序处理后台繁忙导致前台控件假死现象解决方法

    特别是针对循环或timer处理中需要在窗体控件显示数据时,因后台处理过度繁忙而出现没刷新或者假死现象时,可以使用 复制代码 代码如下: Application.DoEvents(); Application.DoEvents()的作用 复制代码 代码如下: private void button1_Click(object sender, EventArgs e)         {             for (int i = 0; i < 10000; i++)            

  • vue-cli项目优化方法- 缩短首屏加载时间

    最近实习的项目需求上要求不多,就学了下项目优化,主要是首屏加载太慢. 大文件定位 我们可以使用webpack可视化插件Webpack Bundle Analyzer 查看工程js文件大小,然后有目的的解决过大的js文件. 安装 npm install --save-dev webpack-bundle-analyzer 在webpack中设置如下,然后npm run dev 的时候默认会在8888端口显示. const BundleAnalyzerPlugin = require('webpac

  • 处理 SSI 文件时出错的解决方法

    IIS6.0对于SSI进行了一些改进,以前IIS5.0的一些程序迁移过后可能无法运用. 一个经常的出现问题是出现如下错误: 处理 SSI 文件时出错 - Error processing SSI file 经过测试,以下做法会导致这个错误: 1.服务器物理路径使用中文名. 2.包含文件中使用中文名. 3.包含文件不存在. 4.被包含的文件再次包含使用中文名的文件. 该错误在Unicode编码时依旧,属于IIS设计问题. 解决方法: 对于使用SSI的站点物理和URL地址都全部使用英文.

随机推荐