C# 应用程序池在站点上崩溃
所以我一直在试图弄清楚为什么应用程序池时不时地崩溃,并且我已经确定了cau似乎是导致问题的页面 当我在浏览器中打开站点并访问Shipping cart页面(在向购物车添加内容后),整个浏览器变得无响应,我打开Task Manager,看到IE(浏览器)使用了99%的CPU,所以我右键单击>创建转储>尝试读取转储,但WinDBG似乎不喜欢DMP文件;我不会读的 所以我继续,并尝试在没有转储文件的情况下解决它。我启动VisualStudio,打开有问题的站点,然后执行相同的过程(将内容添加到购物车,然后访问购物车页面)。令我惊讶的是,一切都很好C# 应用程序池在站点上崩溃,c#,asp.net,.net,iis,C#,Asp.net,.net,Iis,所以我一直在试图弄清楚为什么应用程序池时不时地崩溃,并且我已经确定了cau似乎是导致问题的页面 当我在浏览器中打开站点并访问Shipping cart页面(在向购物车添加内容后),整个浏览器变得无响应,我打开Task Manager,看到IE(浏览器)使用了99%的CPU,所以我右键单击>创建转储>尝试读取转储,但WinDBG似乎不喜欢DMP文件;我不会读的 所以我继续,并尝试在没有转储文件的情况下解决它。我启动VisualStudio,打开有问题的站点,然后执行相同的过程(将内容添加到购物车,
不知道现在该怎么办。有什么建议吗?当一切都在本地完美运行时,以及过去一切都在线完美运行,但不再在线正常运行时,您如何确定挂起的原因?如果浏览器没有响应,占用99%的CPU,这是客户端问题;它很可能与IIS或服务器端代码无关 是否您的页面中有一些javascript存在缺陷并进入繁忙循环?我认为值得一试来测试(使用IE的开发者工具(F12)、Visual Studio的javascript调试功能或FireFox与FireBug的结合) 编辑 我觉得奇怪的是,你的应用程序池崩溃了,这样做会导致web浏览器变得没有响应。对于无响应,您是否真的意味着浏览器本身停止工作(即,返回页面或转到另一个url(如google.com)是不可能的?) 无论如何,如果您认为问题发生在服务器端,您可以尝试以下方法(以增加工作量的顺序):
- 应用程序池崩溃后,请检查windows事件日志(从命令提示符运行“eventvwr”),并查看提供的信息
- 查看IIS日志(您可能会先查看),看看它是否包含任何奇怪的请求模式,例如您的页面被敲打)
- 从IIS运行网站,但将Visual Studio中的调试器(在“工具”下的“附加到进程-仅包括托管代码”)附加到IIS工作进程(通常为w3wp.exe)。如果您的页面抛出异常,VS应该能够捕获它
- 向页面添加更多跟踪,应用程序的错误似乎是一个特别好的候选