aspnet_isapi.dll' 报告它自身有问题的原因


今天系统突然折了,但是问题在哪呢?很费周折。

  错误信息:

  ISAPI'c:windowsmicrosoft.netframeworkv2.0.50727aspnet_isapi.dll'报告它自身有问题,原因如下:'检测到死锁'。

  有关更多信息,请参阅在http://go.microsoft.com/fwlink/events.asp的帮助和支持中心。

  症状:系统总是不稳定,一会能用,一会儿又死掉了。

  分析过程:

  这个版本已经跑了很长时间,估计不是程序死锁的问题。倒底是什么问题呢。应该是外部环境的问题。由于错误信息比较的抽象,之前没有遇到过,所以google了下,但是好像遇到此问题的人很少,不过在博客园还是遇到一位受到同样遭遇的人,但是并没有一种很好的解决方案,也没有确切的指出问题的症结。所以只有自己进行一些检查。

  <1>查看最近的系统更新,看是否有关于IIS之类的更新

  <2>查看系统的杀毒软件的日志文件,看是否收到了攻击

  但是,检查上述两个步骤,并没有发现问题。看系统是有一些更新,迫于无奈,只好重启系统试一下(也顺便重启IIS)。重启之后,问题依旧。

  观察进程管理器,发现:

  W3WP的线程数,一直在变化,一会增加一个高峰值,重新增加一个W3WP进程,之前的进程过一会就自动关闭,一会又恢复正常。

  这说明网站,在不断的死亡、重启。到底是哪里的问题呢?应该还是系统自己的问题了。但是它自身的版本并没有问题,为了确定这一点,我也试了之前稳定的版本,同样出现此类问题。最后,是否是系统中调用的第三方服务,将整个系统给拖死了呢?

  罪魁祸首:经过检查,果然是由于程序中实时调用了一个服务,由于此服务已经停止,请求无果,出现了死锁。

  教训:

  <1>最大大限度保证系统与第三方服务的稳定、安全,并在请求过程中做超时判断、消息分级处理。

  <2>遇到问题,首先应全面分析系统的问题可能性,因为系统本身的运行环境一般都是固定不变的,出现问题的可能性很小。

  有的时候在写程序的时候,如果出了问题,首先应该怀疑自己的思路、代码哪里出了问题,而不应该去怪罪IDE或者OS出了什么BUG。这样你就少走很多弯路。

今天系统突然折了,但是问题在哪呢?很费周折。

  错误信息:

  ISAPI'c:windowsmicrosoft.netframeworkv2.0.50727aspnet_isapi.dll'报告它自身有问题,原因如下:'检测到死锁'。

  有关更多信息,请参阅在http://go.microsoft.com/fwlink/events.asp的帮助和支持中心。

  症状:系统总是不稳定,一会能用,一会儿又死掉了。

  分析过程:

  这个版本已经跑了很长时间,估计不是程序死锁的问题。倒底是什么问题呢。应该是外部环境的问题。由于错误信息比较的抽象,之前没有遇到过,所以google了下,但是好像遇到此问题的人很少,不过在博客园还是遇到一位受到同样遭遇的人,但是并没有一种很好的解决方案,也没有确切的指出问题的症结。所以只有自己进行一些检查。

  <1>查看最近的系统更新,看是否有关于IIS之类的更新

  <2>查看系统的杀毒软件的日志文件,看是否收到了攻击

  但是,检查上述两个步骤,并没有发现问题。看系统是有一些更新,迫于无奈,只好重启系统试一下(也顺便重启IIS)。重启之后,问题依旧。

  观察进程管理器,发现:

  W3WP的线程数,一直在变化,一会增加一个高峰值,重新增加一个W3WP进程,之前的进程过一会就自动关闭,一会又恢复正常。

  这说明网站,在不断的死亡、重启。到底是哪里的问题呢?应该还是系统自己的问题了。但是它自身的版本并没有问题,为了确定这一点,我也试了之前稳定的版本,同样出现此类问题。最后,是否是系统中调用的第三方服务,将整个系统给拖死了呢?

  罪魁祸首:经过检查,果然是由于程序中实时调用了一个服务,由于此服务已经停止,请求无果,出现了死锁。

  教训:

  <1>最大大限度保证系统与第三方服务的稳定、安全,并在请求过程中做超时判断、消息分级处理。

  <2>遇到问题,首先应全面分析系统的问题可能性,因为系统本身的运行环境一般都是固定不变的,出现问题的可能性很小。

  有的时候在写程序的时候,如果出了问题,首先应该怀疑自己的思路、代码哪里出了问题,而不应该去怪罪IDE或者OS出了什么BUG。这样你就少走很多弯路。


« 
» 
快速导航

Copyright © 2016 phpStudy | 豫ICP备2021030365号-3