IIS进程经常崩溃的三个解决思路

如果服务器使用IIS,并且部署了很多站点。最常见的一个现象是w3wp.exe进程占用CPU很高,或使用较多虚拟内存的情况。通常解决思路是增加内存,由于成本低廉,效果还是相当不错的。如果还不能解决问题。可以考虑以下三个方案:

一、通过使用 IIS 管理器来启用 CPU 监视

在命令行下输入inetmgr,进入IIS管理单元,选本地计算机--应用程序池——设置即可。

可以参看微软官方设置:

http://technet.microsoft.com/zh-cn/library/cc779108%28WS.10%29.aspx

http://technet.microsoft.com/library/bb878105

此方案的缺点也是显而易见的,首先网站应用池较多时设置极为不便,其次是即便设置了,大多数情况下并不能正常work。微软给出的解释是网络情况太过千变万化了,囧一个。

问题出现了总得有个解决方案啊,于是,Microsoft推出了一个增强版的资源管理器,简称WSRM,全称是Windows System Resource Manager(windows系统资源管理器)

二、使用WSRM管理CPU使用率

下载地址:http://www.microsoft.com/china/windowsserver2003/technologies/management/wsrm/default.mspx

IIS7下使用:http://learn.iis.net/page.aspx/449/using-wsrm-to-manage-iis-7-apppool-cpu-utilization/

三、自主解决方案

可以写个windows serveice,来定期侦探CPU使用,此方法需要考虑多核情况,基本思路是:在一段平均时间内如1分钟,持续不低于70%,那基本是不会自动降下去,此时需要手动重启。调用" IISreset"命令即可。

小结:方法二可靠性高。方法三灵活性高。

posted @ 2010-12-20 08:58  邀月  阅读(2096)  评论(4编辑  收藏  举报