关于如何诊断这个的任何想法? only link I’ve found谈论安装低级调试工具,但在进行这种低级别分析之前,我会知道有人有更好的想法或合适的选择.
问题(从我可以看到)是客户环境中的一个问题,因为在至少20个或30个不同服务器上的其他客户站点上安装了相同的应用程序,并且问题不会发生.
问候
马西莫
解决方法
运行:Windows Server 2003,IIS 6.0 / ASP 3.0,
2.13 GHz,1 GB RAM
我的网站是测试版,所以我几乎没有访问该网站.
根据事件查看器我每3分钟得到这个警告3次,
然后停止几个小时.
那么有时我会得到错误:
服务应用程序池“DefaultAppPool”的进程意外终止.进程ID为’3900′.进程退出代码为“0x800703e9”.
其后跟:
由于在该应用程序池中运行的一系列故障,应用程序池“DefaultAppPool”被自动禁用.
然后,当浏览网站时,会导致“服务不可用”消息.
在阅读了关于这个问题的太多帖子后,我做了以下步骤:
>我读到这可能是注册表访问权限,所以我安装了一个监视器并跟踪所有W3SVC访问被拒绝的错误并授予权限
>我读到0x800703e9错误意味着堆栈over flow,导致w3wp.exe崩溃,我应该安装一个Debug工具,并尝试获得一个内存转储.
我这样做,但没有得到任何转储,所以我安装了一个新的调试工具,但还没有崩溃.
我的网站正在进行一些数据挖掘,以保持服务器的繁忙.
结论:
>我不知道那里发生了什么,但是我知道我的服务器机器是资源缓慢的方式,所以我要升级并重新安装它,我确信它会解决问题…
>问题发生在所有的时间,即使我的.net代码是空闲的,因此在服务器上是一个问题,而不是我的代码.
>我认为第一个警告“一个服务应用程序池的进程…”每隔一段时间发生一次,然后每次都会重新启动应用程序池,因此附加一个调试器不会有帮助 – 该进程不断重新启动,调试器不再有效…
我认为0x800703e9错误(导致服务不可用)可能发生在应用程序池重新启动时,我猜想它需要很多资源,并且由于我的机器太慢,它得到的是0x800703e9 …如前所述堆栈流,但我认为它是由低资源造成的,而不是无尽的递归.
>我认为微软所声称的“注册管理机构访问权限”是一个废话,但是我没有“服务不可用”,因为它可能有所帮助(以为我仍然得到警告“一个进程服务应用程序池…“).
希望这个帮助某人…