服务器的w3wp.exe进程占用cpu和内存过多的问题
2010年10月30日
from:http://www.jzxue.com/Html/kongjian/2007/6/361 550B3F.html 在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢。 解决CPU占用过多: 1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。 2、设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭。 根据w3wp取得是哪一个应用程序池: 1、在任务管理器中增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid 2、在命令提示符下运行iisapp -a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池。(iisapp实际上是存放在C:\windows\system32目录下的一个VBS脚本,全名为iisapp.vbs,如果你和我一样,也禁止了Vbs默认关联程序,那么就需要手动到该目录,先择打开方式,然后选"Microsoft (r) Windows Based Script Host"来执行,就可以得到PID与应用程序池的对应关系。) 3、到iis中察看该应用程序池对应的网站,就ok了,做出上面的内存或CPU方面的限制,或检查程序有无死循环之类的问题。 解决内存占用过多,可以做以下配置: 1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。 2、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。再设置当内存占用超过多少(如500M),就自动回收内存。我的设置如下:首先是对CPU的限制:在启用cpu监视后,我设置该应用程序池最大的cpu使用率为50%。设置刷新cpu时间为1分钟,设置操作为"关闭"。最大工作进程数设置为1。这个意思是,IIS刷新检测该独立池的CPU使用情况时间为1分钟,如果超过设置的cpu限制50%,就会发出关闭池的指令,要求池在指定的时间内关闭。如果池成功在这个时间内关闭,IIS会重启动一个新池,此段时间很短,一般不会有什么感觉,池就重新开启了,对于访问网站的人基本是不会有感觉的。但如果池没有在指定时间内关闭,IIS就会强行关闭它一个刷新CPU时间。在这个停止的时间内,网站无法访问,提示"Service Unavaliable"。 关闭时间和启动时间间隔设置:设短一些比如10秒,这样当您的网站程序大量占用系统资源时IIS自动快速回收进程并且快速启动进程,您的网站暂时还可以将就着工作。 对内存的限制及进程回收时间的设置:我设置为内存占用超过800M就自动回收内存,虚拟内存没有做限制。进程回收时间我保持默认没有修改。各位可以根据自己的情况设置更短的时间。对应用程序池最大虚拟内存也可以在此进行设置,超过了设置的最大虚拟内存,该池会就被回收。 最后综合落伍wlmmc的一些经验,总结一些需要注意的问题: 1、 要限制一个站点的CPU使用,必须将该站点设置为独立应用程序池,共用应用程序池是无法限制单个站点的。IIS独立应用程序池,就需要独立的进程,非常消耗内存。独立池越多,就有越多的W3WP进程。对于每个站点均要独立应用程序池的服务器,在一般的普通P43.0 2G内存 的普通服务器上,建议不要超过50个站点,最好30以内,不然服务器压力非常大。在配置上,我一般把资源消耗较大的网站独立一个池,一般普通BBS或者生成HTML的系统大概5个站一个池。普通网站以及一些企业站点均共用一个池。 2、根据wlmmc的经验,在服务器硬件允许的情况下,一般不要限制站点内存使用,这样能够保证网站运行,不会出现用户掉线情况。需要限制某站的最大虚拟内存不要小于64M,不然可能出现一些未知的错误。 3、这些都不是根本解决办法,它的根本问题是网站程序有问题,要解决根本问题还要从程序查起。根据本文开头提到的方法查到具体的应用程序池,找到使用此应用程序池的网站,解决网站程序存在的问题,如死循环之类。 4、除了w3wp.exe, 在调用数据库进行大量查询操作的时候,也会大量占用CPU资源,这是难免的(数据库方面的语句及结构优化不在本文讨论范围之内)。个人认为,只要不是CPU长时间占用100%, 一般在75%左右都是正常的。
发表评论
-
QTP录制Delphi客户端
2012-01-20 02:19 757QTP录制Delphi客户端 2010 ... -
2010年6月PHP面试题
2012-01-20 02:18 5972010年6月PHP面试题 2010 ... -
中秋节的来历
2012-01-19 10:08 586中秋节的来历 2011年12 ... -
中国上古神话中神族谱系探源
2012-01-19 10:08 841中国上古神话中神族谱系探源 2011年07月10日 关于 ... -
复兴礼仪的问题
2012-01-19 10:08 581复兴礼仪的问题 2011年1 ... -
河南省普通高中毕业班高考适应性测试语文试卷
2012-01-19 10:08 441河南省普通高中毕业班高考适应性测试语文试卷 2011年04月 ... -
通用(任何android机型)Root教程(完整版!附砖机自救方法)转自安卓网
2012-01-17 02:49 794通用(任何android机型)Root ... -
系统安全-使你的电脑固若金汤,百毒不侵
2012-01-17 02:49 542系统安全-使你的电脑固 ... -
怎么使用quicktime
2012-01-17 02:49 600怎么使用quicktime 2011年1 ... -
撼动IT界的10大编程语言
2012-01-17 02:49 526撼动IT界的10大编程语言 ... -
中国驻各国大使馆电话及地址
2012-01-15 22:26 784中国驻各国大使馆电话及地址 2009年08月13日 ... -
我国驻越南的外交机构
2012-01-15 22:26 562我国驻越南的外交机构 2011年03月23日 中国驻越南 ... -
世界各国驻中国大使馆名录(全)
2012-01-15 22:26 1677世界各国驻中国大使馆名录(全) 2009年10月07日 ... -
各国驻香港大使馆
2012-01-15 22:26 513各国驻香港大使馆 2011年05月10日 香港机票网 ... -
骑行缅甸边境城市
2012-01-15 22:26 770骑行缅甸边境城市 2012年01月09日 ...
相关推荐
在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢。 解决CPU占用过多:1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。2、设置应用程序池的CPU监视,不超过...
w3wp.exe是在IIS(因特网信息服务器)与应用程序池相关联的一个进程,如果你有多个应用程序池,就会有对应的多个w3wp.exe的进程实例运行。这个进程用来分配大量的系统资 今天研究了一下,可以做以下配置: 1、在IIS中...
刚刚架设好网站,却发现反应速度奇慢,上服务器一看发现CPU100%占用,发现是w3wp.exe长时间占用大量CPU.出现这种情况应该是网站程序存在死循环等问题所致。在找到问题以前可以暂时采取限制w3wp进程CPU使用率的方法...
对于IIS 管理员来说,经常会碰到 Web 服务器 CPU 占用 100% 的情况,w3wp.exe是IIS工具的一部。w3wp.exe是在IIS(因特网信息服务器)与应用程序池相关联的一个进程,如果你有多个应用程序池,就会有对应的多个w3wp.exe...
近在互联网上提这个问题的网友较多,典型问题:这几天服务器总是运行缓慢,远程登录后发现一个w3wp.exe的进程占用了100% cpu.
1:使用 MicrosoftJet 数据库引擎 Web 应用程序可能停止响应负载,造成假死: 原因:发生此问题是因为 Jet 数据库引擎中存在缺陷。... 补丁下载: chs:WindowsServer2003-KB838306-x86-chs.exe enu:WindowsServer200
[process=w3wp.exe] 结束的进程名称,为空则自动删除占用CPU最高的进程。 [maxcpu=95] 持续大于等于这个CPU使用率则报警 [smtp=xxx@newbooks.com.cn;xxx;xxxxx;mail.newbooks.com.cn]smtp设置。格式为:邮箱;用户名;...
4:inetinfo.exe的,或数据库程序w3wp.exe进程中取得的CPU占用率非常高。 如果您可确定不是硬件故障问题的话,那么您就可能被DDOS攻击了!但怎么确定是否真被DDOS了呢?也许您就犯难了,现在我们NB DDOS软件科技的...
4:inetinfo.exe的,或数据库程序w3wp.exe进程中取得的CPU占用率非常高。 如果您可确定不是硬件故障问题的话,那么您就可能被DDOS攻击了!但怎么确定是否真被DDOS了呢?也许您就犯难了,现在我们NB DDOS软件科技的...
几天服务器总是运行缓慢,远程登录后发现一个 w3wp.exe 的进程占用了 100% CPU。