IIS---W3SVC死锁
之前公司给某高校开发了一套考试评价的系统,这周该校进行评教我就被公司派过去应对突发情况了。本想着系统已经上线3年了,应该也不会有多大问题了,但是就在今天上午10点左右还是出现了系统无法访问的情况。本以为很轻松的一个工作,顿时就给我了不好的感觉。
场景还原
看着CPU和内存的占用情况,还是不相信会出现登陆不上的问题。可是问题偏偏就出现了,下意识的第一想法是先重启电脑看看。重启之后就一切都恢复正常了,这件事也就这样应付过去了。
问题真因
作为一个有进取心的软件设计师当然不会错误每一次学习的机会,同时这个问题也是我在之前开发和带项目的过程中没有遇到的问题。
系统运行的环境:WindowsServer2003+IIS6
通过在网上查资料发现在这个组合条件下,出现IIS假死的情况还是很普遍的。而通过查看系统日志问题,发现系统的W3SVC-WP服务中产生了死锁如下图:
而W3SVC-WP这项系统服务是IIS网站及程式的基础,它包含了行程管理和设定管理,前者控制了自订程式和网站的行程,后者会读取所储存的系统设定,并确保Http.sys能将HTTP要求转送到适当的应用程式集区或作业系统的行程。如果停止这项系统服务,Windows将无法为任何形式的Web要求提供服务。
解决方法
今天通过重启服务器就解解决了这个问题,但是这并没有从根本上解决这个问题,我目前的猜想是这个问题可能是于共用应用程序连接池引起的(如果真是我会另写博客)。
时间: 2024-10-08 11:59:24