win2003+iis6.0环境下w3wp.exe占用过高的解决方案

原创 2012年08月31日 22:50:26

前段时间,朋友的服务器出现w3wp.exe进程一直处在80%至90%左右,严重影响其它用户网站的访问效率。顺便说一下,朋友的服务器为Win2003系统,大约有约100左右个网站。出现这样的问题,只有找到对应的网站,并检查是否被挂马。在此记录一下解决这次事件的过程。

因为朋友的服务器的网站较多,不同类型的网站采用不同的“应用程序池”,而不是每个网站对应不同的“应用程序池”,所以先找出对应的“应用程序池”名。

1.任务管理器>查看>选择列>PID(进程标识符)

打开“Windows 任务管理器”,调出PID列。目的是找出CPU占用率高的w3wp.exe映像名称的PID值,如下图

2、注册CScript

首先,在cmd中输入iisapp -a并回车
此时,系统会提示:此脚本不能与WScript工作。
接着,系统会提示是否注册CSript,选择“是”。
最后,系统会提示“成功注册了CScript”

3、注册成功后再运行iisapp -a命令

执行iisapp -a命令,系统列出w3wp的PID及对应的应用池名,内容如下:

Microsoft Windows [版本 5.2.3790]
(C) 版权所有 1985-2003 Microsoft Corp.
C:\Documents and Settings\Administrator>iisapp -a
W3WP.exe PID: 4880   AppPoolId: WinWebMail
W3WP.exe PID: 5028   AppPoolId: DefaultAppPool
W3WP.exe PID: 4148   AppPoolId: apppool005001
W3WP.exe PID: 3492   AppPoolId: apppool005003
W3WP.exe PID: 6116   AppPoolId: apppool020001
W3WP.exe PID: 5652   AppPoolId: apppool010001
W3WP.exe PID: 5144   AppPoolId: apppool001001
W3WP.exe PID: 588    AppPoolId: apppool005002
W3WP.exe PID: 2568   AppPoolId: apppool025001

4、通过PID值查找相应的应用池名,利用排除法关闭站点

比如W3WP.exe PID: 5144占用CPU百分之百,那么在iis里对应的是apppool001001。

5、关闭站点,观察CPU状态

如果一个“应用程序池”多应多个网站,那么只有一个个的关闭这些网站,观察CPU状态。

关掉其中一个站点,如果CPU五分钟下降了,就说明是这个站点的问题

6、CPU使用超标的解决方法

对于CPU使用超标的解决方法有多种可能性,可以通过“应用程序池”属性中的内存回收、性能监视等方式尝试,关于“应用程序池”属性中的相关内容自行百度,也可检查网站是否被挂马等。

7、重启iis,继续观察CPU使用状态

只有确定是哪个网站导致CPU占用率过高,才能好对症下药,找出原因所在。由于朋友服务器的一个应用程序池对应若干个网站,我所采用的方法是关掉该程序池对应的所有网站,然后直接重启服务器,观察CPU使用状态。如果没有问题,就开启一个站点,并观察。这样利用排除法找出有问题的网站。

w3wp.exe(IIS ) CPU 占用 100% 的常见原因及解决办法

对于IIS 管理员来说,经常会碰到 Web 服务器 CPU 占用 100% 的情况,以下是个人的日常工作总结和一些解决办法,主要用来剖析 w3wp.exe(IIS )  占用 CPU 100...
  • ldl22847
  • ldl22847
  • 2012年07月17日 09:19
  • 28853

windows7 找不到w3wp.exe 进程

在windows7上用iis开发C# web程序,一直都使用附加进程-到w3wp。用的好好的。 中间有一段时间,不用C#,做了做android,今天要调试一个C#的界面,突然发现找不到w3wp ...
  • small_tu
  • small_tu
  • 2015年11月18日 16:45
  • 4268

关于W3WP.EXE进程的问题

一. 解决内存占用过多,可以做以下配置 1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。 2、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。再设置当内存占用超...
  • yw1688
  • yw1688
  • 2014年03月26日 10:55
  • 1139

iis服务器上网站w3wp.exe占用内存过高!

iis服务器上网站过段时间就无法打开,回收进程,关闭网站都没作用!只有重启服务器,网站才能恢复正常访问,但是过段时间网站就有打不开了! 最后在任务管理器里面发现了问题:w3wp.exe占用内存过高!...
  • wkj001
  • wkj001
  • 2017年02月13日 13:50
  • 1217

w3wp.exe内存占用过高解决方法(转载)

w3wp.exe内存占用过高解决方法在IIS6下,经常出现w3wp的内存占用不能及时释放,从而导致服务器响应速度很慢。由于内存释放不及时严重影响到服务器的正常运营,建议采用以下配置,但请考虑自身服务器...
  • xuezhongsong
  • xuezhongsong
  • 2009年05月28日 00:20
  • 26111

使用procdump工具监视已发布的应用程序,如崩溃产生dmp文件进行调试

工具下载地址https://technet.microsoft.com/en-us/sysinternals/dd996900.aspx Introduction ProcDump is a ...
  • soft_123456
  • soft_123456
  • 2015年03月05日 17:08
  • 1893

认识w3wp.exe进程,从根本上解决占用资源较大问题

因公司相关web应用访问出现问题,做了相关修改后,访问web应用页面,导致系统cpu占用率过高(90%左右),后发现是因为w3wp.exe进程占用cpu过高导致,经过排查(排查方法可参考这篇文章【通过...
  • dd_zhouqian
  • dd_zhouqian
  • 2013年11月14日 16:10
  • 2520

用一行代码让w3wp进程崩溃,如何查找w3wp进程崩溃的原因

转载地址:http://www.cnblogs.com/yukaizhao/archive/2009/12/19/iis_w3wp_crash.html#1951782 W3wp进程崩溃了,...
  • kaosini
  • kaosini
  • 2013年01月16日 16:48
  • 1276

记一次w3wp占用CPU过高的解决过程(Dictionary和线程安全)

来源:http://www.cnblogs.com/ants/p/3993507.html 项目上线以来一直存在一个比较揪心的问题,和一个没有信心处理的BUG,那就是在应用程序启动时有可能会导致c...
  • Tony_Jas
  • Tony_Jas
  • 2016年01月13日 14:22
  • 1106

w3wp占用CPU过高的解决过程(Dictionary和线程安全)

抓取Dump 使用任务管理器抓取Dump,如果操作系统较低可以使用“Process Explorer”。 使用WinDbg分析 1.使用WinDbg打开dump文件。 2.加载sos.dl...
  • KZWRCOM
  • KZWRCOM
  • 2015年11月13日 11:51
  • 629
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:win2003+iis6.0环境下w3wp.exe占用过高的解决方案
举报原因:
原因补充:

(最多只允许输入30个字)