您当前的位置 :泾川网行风 >> IT技术>WEB开发 >> 正文内容

IIS应用程序池假死(IIS出现网页打开很慢甚至打不开)问题解决办法

2010年03月30日 来源:本站整理 点击数:

  iis问题,应用程序池!

   为应用程序池'AppPool#1'提供服务的进程关闭时间超过了限制。进程ID是'3000'。

   出现上面情况后,该应用程序池对应的网站就访问的非常慢,几乎是打不开。

   这种现象是不是iis假死?

   重启下该站点,问题可以得到解决。

   可能是应用程序池设置问题,不知道具体应该怎么设置!

   请高手指点。

   程序代码解决办法:

   1、设置进程池回收时间.在进程池属性里.

   2、如果你的程序是使用asp+acc数据库.且acc数据库大于30m.建议更换sql数据库.acc数据库大于这个值.2003系统下会造成iis6的频繁假死.2000下会造成dllhost.exe占用大量cpu及内存资源.都会严重影响web访问速度.

   3、asp程序存在死循环.

   4、可使用microsoftoffice压缩修复acc数据库,须先备份.

   引用内容2003应用程序池假死常见问题及解决方法

   经常见到大家谈起,2003应用程序池自动死了,不能恢复了,一直出现ServiceUnavailable常见方法如下。

   1:以前没有SP1打补丁的时候会出现这个IIS6。0假死问题,但现在微软都在自动更新里面出补丁了,一般你打好最新补丁后是不会出现此问题了。(所以现在的IIS假死与这个关系不是很大)

   2:从IIS6.0开始CPU资源都在应用池里面限制了,不象以前的IIS。5。所以假死的池的缘故就是池被拉死,你在网站打不开的时候可以看到你的某个应用池是禁用的,上面出现一个红叉。你鼠标右键启动网站又会自动恢复。这个原因:大概是以下几个因数造成的。

   (1):你限制了应用池的资源限制,限制得太小比如:50这样或更少更多一点,这个时候如果你这个池下面的网站占用CPU太高,比如超过50%那么5分钟后他就自动死了,手工默认建立的应用池默认是超过资源不操作。

   出现上面这个情况解决方法:1:不限制CPU资源,(这个是不可取的,不限制资源,有的程序有BUG占用资源厉害了的,服务器都会被拉死,你可能都无法操作服务器。)2:在超过资源那里选择关闭,这个关闭默认是失败5次,90秒内恢复,一般默认就可。网站能自动恢复,这个关闭:不是永久关闭,意思是超过资源关闭,然后在某时间内自动恢复池。不操作就是不恢复,这个是很多人的误区。上次我写过相关的这个讲解了。

   (2):内存限制在IIS6。0应用池上面有虚拟内存和最大内存限制,如果你设置了这个。那么网站访问量大了也会出现假死,所以不建议设置这里。默认就可。

   3:就是服务器自身内存太小,网站运行当然需要使用到内存了,当内存不够的时候应用池也会死掉变成禁用。那么只有等内存全部释放出来才能恢复应用池了。出现这个情况:那么你就要考虑加内存或者检查到底是什么程序占用了内存了。比如MSSQL数据库,这个可是吃内存得大户啊,最好别和WEB服务器同时一个服务器上。很多人用1G内存做2003系统,2003NET结构是很占用内存的,所以做服务器选2003还得把内存加到2G或更高才好。内存不够上面2点讲到的,是没办法操作了,也无法自动恢复。

   4:就是ACCESS数据库太大或查询太多,这个也会出现把IIS拉死,解决方法;修复ACCESS数据库,或尽量少用ACCESS数据库。

   5:不同网站用不同应用池:根据你自己实际情况而定,站点大的最好独立一个应用池,限制他的资源超过了自动回收,看上面(1)讲到的,这样就不影响其他站点。中型站点:多个网站共用一个应用池,比如5个站点用一个池,设置他资源时间等等。这样他们就算超资源了也不影响其他应用池的网站。

   6:设置回收时间:很多人以为设置回收池越短越好,其实是错误的,每次回收当然是把内存回收回来了,但加重了一次服务器的负担,当服务器比较繁忙的时候,有可能导致其他应用池死。所以建议设置共1000就行了。其他独立池按照他网站流量而设置可以设置600也行,共用的不建议设置太短。

   7:网站后台过不了多久自动退出又要重新登陆:这个情况就是你设置回收时间太短了,按照6点设置吧。不要设置什么20分、30分这样的,这样不好的。


相关新闻

版权与免责声明

1、凡注有“网行风”或“HUGO”的稿件,均为泾川网行风版权稿件,转载请注明来源为“泾川网行风”。

2、凡注明为其它来源的信息,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

娱乐视点

    分享到