问题背景

问题背景

最近使用一款系统,但是经常出现卡顿或者用户账号登录不了系统。后来将问题定位在了服务器中的“w3wp.exe”这个进程。在我们的用户对系统进行查询、修改等操作后,该进程占用大量的CPU以及内存资源,导致服务器运行缓慢,用户也是怨声载道。曾经尝试结束掉这个进程,但是没多久这个进程又“不知廉耻”的占用大量的CPU和内存。我是个懒惰的人,实在难以想象每次都需要到服务器中结束这个进程,所以想个解决办法一劳永逸!

W3wp.exe简介

下面是百度百科上的介绍:

w3wp.exe是在IIS(因特网信息服务器)与应用程序池相关联的一个进程,如果你有多个应用程序池,就会有对应的多个w3wp.exe的进程实例运行。这个进程用来分配大量的系统资源。

常见问题

由于我们的服务器空间是刚划分出来的,发布了一个WEB站点,也就三两个用户在使用系统。所以初步断定是由于网站程序引起的。但是依然将常见的问题一一列举出来,以备不测。

  • 网站程序的死循环或大量运算引起进程占用大量系统资源
  • 服务器资源没有自动释放
  • 缓存文件资源引起的程序越来越慢
  • WEB站点访问量大

解决方案

1. 检查WEB站点。结束掉“W3wp.exe”进程,治标不治本,并不能从根本上解决问题。所以我们先要确定网站的应用程序池,查找到对应的网站检查网站程序。事实上如果你发布的WEB站点只有一个,那么就可以省去查找占用系统资源最高的PID进程对应的WEB站点了。但是通常情况下并不是这样的,所以把下面的解决方案贴上来。当然,在运行命令提示符“iisapp -a”的时候,如果系统没有任何提示,在“C:\windows\system32”中检查是否缺少这个脚本。

  • 在IIS中对每个网站进行单独的应用程序池配置。即互相之间不影响。
  • 设置应用程序池的CPU监视,不超过25%(服务器为4CPU),每分钟刷新,超过限制时关闭。
  • 根据w3wp取得是哪一个应用程序池。

在任务管理器中点击“查看--选择列”增加显示pid字段。就可以看到占用内存或者cpu最高的进程pid 在命令提示符下运行iisapp -a。注意,第一次运行,会提示没有js支持,点击确定。然后再次运行就可以了。这样就可以看到pid对应的应用程序池。(iisapp实际上是存放在C:\windows\system32目录下的一个VBS脚本,全名为iisapp.vbs,如果你和我一样,也禁止了Vbs默认关联程序,那么就需要手动到该目录,先择打开方式,然后选“Microsoft (r) Windows Based Script Host”来执行,就可以得到PID与应用程序池的对应关系。) 到iis中察看该应用程序池对应的网站,就ok了,做出上面的内存或CPU方面的限制,或检查程序有无死循环之类的问题。

2. 设置CPU监视。在设置CPU监视时,看到网上的许多资料都是IIS6的。所以请先注意下自己IIS的版本。例如我的版本是IIS7。右击WEB站点对应的应用程序池,选择“高级设置”。图示中若设置“已启用处理其关联=true”,那么服务器会在每隔一分钟监视一次CPU。若果超过95%的利用率,那么就会关闭掉“W3wp.exe”进程。完美解决我的问题,但是从网上对IIS7的各种分析来说,服务器监测关闭掉进程后经常不会重新启动新进程,必须手动重启。如果占用内存过多可以在对下面的“回收”进行设置。

3. 清理缓存文件。服务器长时间运行后没有定时清理缓存文件也有可能造成程序运行越来越慢。可以通过打开“c:\windows\temp\”目录,清空里面的缓存文件。或者直接通过cmd命令符”输入“ del c:\windows\temp*.* /s /q”。

参考资料

  1. W3wp.exe
  2. w3wp.exe(IIS ) CPU 占用 100% 的常见原因及解决办法
  3. 服务器W3WP.EXE占用CPU高的问题
  4. w3wp.exe占用CPU100%解决方法 w3wp时不时占用CPU高
  5. 认识w3wp.exe进程,从根本上解决占用资源较大问题
时间: 2024-10-07 07:28:37

问题背景的相关文章

解决安卓手机键盘弹出时会把背景或百分比定位的布局压缩的问题

做移动端页面时经常遇到以下案例,在有背景的页面上写表单,而且底部为了适应不同手机还得运用绝对定位,因为通常是把容器高度设为了100%,这时在安卓手机上弹窗软键盘时就会把背景图片及其他东西挤压上去,解决方法如下: 在css样式中把大容器定义为fixed布局 .wrap{ position:fixed;left:0;top:0; } 在js中强制把页面的高度覆给他,就相当于自动撑开 var x =document.body.clientWidth; //查询设备的宽度 var y =document

AD 脚本kixtart运用之四(用户桌面背景)

在http://windyma.blog.51cto.com/661702/1967027文章,已做好用户脚本基础上进行设置 首先设置用户背景桌面是微软件的Bginfo工具,而kixtart只是用来获取用户屏幕的分辨率,根据不同屏幕的分辨率再来调用Bginfo工具来设置不同分辨率的背景图片,以此保证图片不会变形. 第一,在域\\nccn.int\NETLOGON 共享下新建Bginfo目录,把Bginfo.exe工具及不同分辨率的背景图全复制到Bginfo目录下. 第二,用Bginfo.exe工

MFC 加入背景图片并让控件背景透明

/*加入背景图片*/ BOOL CTOOLDlg::OnEraseBkgnd(CDC* pDC) { // TODO: 在此加入消息处理程序代码和/或调用默认值 CDialog::OnEraseBkgnd(pDC); HBITMAP   m_hBitmap; HDC           m_hBkDC; m_hBitmap   =   ::LoadBitmap(::GetModuleHandle(NULL),MAKEINTRESOURCE(IDB_BITMAP2)); m_hBkDC     =

仿网易云音乐播放器(磁盘转圈、背景虚化等等)

先看效果,CSDN的git传上去总是不动.不知道为什么. 主要思路: 1 . 除了 開始/暂停 .上一首.下一首 这三个icon.你看到的是一个ViewGroup ,这个ViewGroup里面有圆形封面.黑色圈圈磁盘.唱针,高斯模糊背景图 2. 凝视掉了磁盘一起转动的效果,如今的方案不是最好的,建议若是想实现,能够把圆形封面和磁盘合并成一张图(最好在CicicleImageView这里面做).给一个旋转动画.两个动画.两个View,帧的频率不会那么高 3.凝视掉了上一首.下一首切换的时候渐变的动

如何实现背景透明,文字不透明,兼容所有浏览器?

IE专属滤镜 filter:Alpha(opacity=x) 使用说明:IE浏览器专属,问题多多,本文以设置背景透明为例子,如下: 仅支持IE6.7.8.9,在IE10版本被废除 在IE6.7中,需要激活IE的haslayout属性(如:*zoom:1或者*overflow:hidden),让它读懂filter:Alpha 在IE6.7.8中,设置了filter:Alpha的元素,父元素设置position:static(默认属性),其子元素为相对定位,可让子元素不透明 <!DOCTYPE ht

Windows 10 之修改登录背景(Win10BGChanger)

默认情况,用户无法直接修改Windows 10的登录背景,但用户还是可以利用第三方的工具(W10 Logon BG Changer)来修改.(软件下载地址见附件) 下载后,解压缩,然后以管理权限运行GUI文件夹下的W10 Logon BG Changer程序,出现如下界面: 在窗口右侧编辑背景下选择本地背景,或者选择其它颜色作为背景. 还可以设置图像缩放. 选择完成后,点击应用更改即可. 同时,还可以恢复默认值恢复原来界面. 注意:如果运行此程序时,出现"在执行程序时出现错误",这有可

设置UITableViewCell 选中时的背景颜色

自定义Cell如图 一个View上面放了四个Label 分别连线到.m文件中 @property (weak, nonatomic) IBOutlet UILabel *nameLabel; @property (weak, nonatomic) IBOutlet UILabel *positionLabel; @property (weak, nonatomic) IBOutlet UILabel *paperLabel; @property (weak, nonatomic) IBOutle

Javascript实现页面背景颜色的改变

<!DOCTYPE html> <html> <head> <title></title> </head> <body> <button style="background:red">red</button> <button style="background:green">green</button> <button style

练习,背景图片开发慕课网右下角工具条

前几天学的慕课的一个课程,侧栏工具条开发.这门课程主要的学习价值: 1. 讲解的案例场景很实用,用到的技术点也较多,主要有css精灵,background-position,css transition,requirejs,sass,图标字体等: 2. 原理分析彻底,html结构清晰,sass逻辑合理,最重要的是在讲解过程中体现出的工作方法和工作态度,都能看出讲师的一些优秀的职业素质: 这门课的练习价值: 1. 掌握以上提到的知识点. 2. 看看在这个过程中会有哪些思考总结. 今天实现的方式是第

改变cell的背景颜色

#define DARK_BACKGROUND  [UIColor colorWithRed:151.0/255.0 green:152.0/255.0 blue:155.0/255.0 alpha:1.0]; - (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath{    cell.backgroun