服务器W3WP.EXE占用CPU高的问题

我的服务器这几天CPU经常50%-100%之间,访问特别慢,听说这种是程序问题导致的,我就多站了一个站点,把全部文件复制过来研究,然后绑上新的域名,把原名的应用池暂停了下... 我的服务器这几天CPU经常 50%-100%之间 ,访问特别慢,听说这种是程序问题导致的,我就多站了一个站点,把全部文件复制过来研究,然后绑上新的域名,把原名的应用池暂停了下,用新的域名访问 我新建的站一点问题都没有,CPU也恢复正常,我以为就解决了,可能是应用池问题,我就把带原来的域名绑定到了新的站点上,但问题又出现了CPU又达到50%-100%,我把原来的域名再解绑,服务器又恢复正常了。
也就是用我原来的域名一绑定站点,对应的应用池就就占CPU很高,一解绑就没事,这是什么原因造成的,是不是我的网站给别人攻击,但我查看带宽占用又不多,麻烦各位大侠帮下忙。要怎么解决这个问题。
我用的是万网翔云主机I IIS6.0
展开
 我来答
轻樱123
高粉答主

2020-04-17 · 每个回答都超有意思的
知道大有可为答主
回答量:1552
采纳率:100%
帮助的人:40.1万
展开全部

w3wp.exe长时间占用大量CPU,出现这种情况应该是网站程序存在死循环等问题所致。在IIS6下,经常出现w3wp.exe的内存及CPU占用不能及时释放,从而导致服务器响应速度很慢。

解决CPU占用过多的方法:

1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。

2、设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭。

3、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。再设置当内存占用超过多少(如500M),就自动回收内存。

扩展资料:

电脑常见故障检修:

故障现象:Trustedinstaller.exe占用CPU太高

1、防杀毒软件造成故障

由于新版的很多软件都有随机监控,无疑增大了系统负担。

处理方式:基本上没有合理的处理方式,尽量使用最少的监控服务,或者升级硬件配备。

2、驱动没有经过认证,造成CPU资源占用100%

大量的测试版的驱动在网上泛滥,造成了难以发现的故障原因。 

处理方式:尤其是显卡驱动特别要注意,建议使用微软认证的或由官方发布的驱动,并且严格核对型号、版本。

3、病毒、木马造成

大量的蠕虫病毒在系统内部迅速复制,造成CPU占用资源率据高不下。

解决办法:用可靠的杀毒软件彻底清理系统内存和本地硬盘,并且打开系统设置软件,察看有无异常启动的程序。经常性更新升级杀毒软件和防火墙,加强防毒意识,掌握正确的防杀毒知识。

上海国想
2024-12-02 广告
如果服务器被攻击,上海国想科技发展有限公司应立即采取以下措施:首先,启动应急预案,隔离受感染的系统,防止攻击扩散。其次,分析攻击源,确定攻击方式和目的,以便采取针对性的防御措施。然后,加强服务器的安全防护,如更新补丁、配置防火墙规则、使用防... 点击进入详情页
本回答由上海国想提供
深蓝002
推荐于2017-10-15 · TA获得超过9984个赞
知道大有可为答主
回答量:1.2万
采纳率:61%
帮助的人:3992万
展开全部
解决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%左右都是正常的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
乘蓝郁1
2016-03-18 · TA获得超过310个赞
知道小有建树答主
回答量:138
采纳率:100%
帮助的人:94.9万
展开全部
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方面的限制,或检查程序有无死循环之类的问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
巍峨又顺眼的小鲤鱼q
高粉答主

2021-01-07 · 关注我不会让你失望
知道答主
回答量:10.5万
采纳率:7%
帮助的人:5217万
展开全部

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
jiebaz
2012-03-30 · TA获得超过102个赞
知道小有建树答主
回答量:337
采纳率:50%
帮助的人:150万
展开全部
这问题不要再硬件区问,回答的人肯定不多!我个人觉得被攻击的可能性还是不大的,可能是多绕了几个节点,程序执行上效率低,CPU占用高的缘故,微软的IIS6.0 本来就不是大多数网络管理员的首选,BUG很多,慢慢研究吧 会有结果的 (不在你身边,很难找到问题原因,找到原因就好解决了)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式