动网论坛,站长建站首选,国内使用量最多的论坛软件 动网论坛官方技术讨论区 站长工具 申请属于您自己的免费论坛
首页 | 新闻资讯 | 网站运营 | 网络编程 | 数据库 | 服务器 | 网页设计 | 图像媒体 | 网络应用 | 搜索优化 | 资源下载 | 动网主机 | DVBOX
    本站内  互联网 ASP论坛  ASP.Net论坛  PHP论坛
   服务器 → 阅读文章

 windows2003 iis6.0假死问题解决

作者来源:http://blog.iyi.cn/user/david 
阅读 数 242 人次 , 2006-2-16 15:28:00 

这几天服务器总是运行缓慢,远程登录后发现一个w3wp.exe的进程占用了100% cpu。

问题的原因最终找到两个:

1.采用的jet 数据库连接方式存在问题:http://support.microsoft.com/?id=838306

补丁下载:

chs:WindowsServer2003-KB838306-x86-chs.exe

enu:WindowsServer2003-KB838306-x86-enu.exe

2.将access数据库扩展名改为asp

下面是我的差错过程和解决方案:

搜索一下发现类似问题还真不少,那个w3wp的进程是iis6.0的应用程序池,网上的说法有两种,一是因为asp或者asp.net代码中含有死循环引起的。但是服务器上这么多网站,谁知道那个网站出了问题。二是由于上面的jet连接数据库方式的bug引起的,下载838306的补丁,或者升级到sp1可以解决这个问题,但是打了这个补丁后,有些网站的问题依然存在。

又去搜索,有人说将每个网站建立独立的应用程序池,应用程序池的安全性帐户设为本地服务即可。方法如下:

首先新建应用程序池:

iis6-2.jpg

然后将网站的应用程序池指向刚才建立的应用程序池:

iis6-3.jpg

在建立完所有应用程序池后,统一修改应用程序池的属性:

iis6-1.jpg

将应用程序池安全帐户指定为本地服务:

iis6-4.jpg

设置完这些之后,问题依然存在,这样一个网站出现问题,不致影响其他网站,但是这个网站仍然占用大量资源,导致其它网站响应缓慢。不过在任务管理器中出现了每个应用程序池的进程,因此可以找到具体出问题的进程了。

下面是寻找出错网站的过程:要找到这个网站,必须把有问题的进程跟该网站的应用程序池联系起来。首先设置任务管理器的查看方式,加入PID的显示:

iis6-5.jpg

iis6-6.jpg

然后再命令行运行iisapp -a,可以看到PID跟应用程序池的对应关系:

iis6-7.jpg

再去iis中看该应用程序池对应的网站,有问题的网站就找到了,剩下的就是这个网站代码中的问题了。

在某位网站管理员的纠缠不休下,我终于无法忍受,帮他找错误- - 无数次配置iis,网站程序也换了,该升级的也升级了,问题还是存在,黔驴技穷,把网站下载到本地看看到底怎么回事。当我试图打开他的数据库的时候,问题出现了:

他的数据库是.asp的扩展名,要先修改为.mdb才能打开,但是当我点击要改名字的时候,我的电脑没有响应了~!看来问题在这个数据库了。

用命令行rename之后,打开数据库,修复,似乎没有任何问题,但是再改为.asp时,又出现了刚才的问题。哈~原来是.asp的扩展名在作怪。

但是我试着将其他的数据库改为.asp,没有问题。根本原因不得而知,望知情者告知。

最后,在iis中随便添加了一个isapi对应到mdb,造成mdb无法执行,防止下载,将所有的.asp的数据库改回.mdb,问题解决。

  
 本文Tagswindows  iis  
 收藏本文  打印本文  论坛讨论  关闭窗口
· 上一篇:iis限制,流量限制与cpu限制的对比
· 下一篇:IIS下中文名的文件无法下载问题的解决方案
· 服务器Windows 2003 Server安装图例
· 网络存储:SAN与NAS和谐统一
· 解决局域网不能互相访问之全攻略
· Exchange 2000 Server的进阶使用(2)
· 基于Sendmail和Perl的邮件附件过滤系统(1)


关于本站 | 联系我们 | 业务合作 | 客户案例 | 诚聘英才 | 广告合作 | 收藏本站
海口动网先锋网络科技有限公司版权所有
Copyright © 2000 - 2006 Cndw.Com
中华人民共和国电信与信息服务业务经营许可证编号 琼 ICP 020077