0

服务器访问速度突然变得很慢,经过测试,范围定在内存严重占用,又经过进一步测试,缩小为某个网站严重占用内存。为找出该网站经过多方查找未果,后经查资料,使用了下面2种方案进行处理:
一、找到占用内存最大的进程PID,再找到其对应的应用程序池。
在IIS6下,经常出现w3wp的内存占用不能及时释放,从而导致服务器响应速度很慢。
今天研究了一下,可以做以下配置:
1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。
2、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。同时,设置同时运行的w3wp进程数目为1。再设置当内存或者cpu占用超过多少,就自动回收内存
一般来说,这样就可以解决了。但仍然会出现个别网站因为程序问题,不能正确释放。
那么,怎么样才能找到是哪一个网站的?
1、在任务管理器中增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid
2、在命令提示符下运行iisapp -a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池
3、到iis中察看该应用程序池对应的网站,就ok了
二、如何检查w3wp.exe进程对应的网站
在2000下:如果站点的应用程序保护是”高“,可以在任务管理器中记录下占用比较高的DLLHOST.EXE的PID,然后打开管理工具,组件服务,计算机,我的电脑,COM+应用程序,然后点击右上角的状态查看,就能看到PID对应的网站域名了.
WIN2003从没装过,不熟悉,可能也是同理吧。
另外 在CMD下运行tasklist /svc就可以看到对应的PID
解决w3wp.exe内存占用问题
在IIS6下,经常出现w3wp的内存占用不能及时释放,从而导致服务器响应速度很慢。
今天研究了一下,可以做以下配置:
1、在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。
2、设置应用程序池的回收时间,默认为1720小时,可以根据情况修改。同时,设置同时运行的w3wp进程数目为1。再设置当内存或者cpu占用超过多少,就自动回收内存
一般来说,这样就可以解决了。但仍然会出现个别网站因为程序问题,不能正确释放。
那么,怎么样才能找到是哪一个网站的?
1、在任务管理器中增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid
2、在命令提示符下运行iisapp -a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池
3、到iis中察看该应用程序池对应的网站,就ok了
关于LP“长出新牙”并求医拔牙一事......
Microsoft SQL Server 与Access、Excel的数据转换

2008/07/29
15:36
330




















