繁体   English   中英

非常奇怪的IIS6 asp.net网站行为

[英]Very weird IIS6 asp.net website behaviour

我的网站有一个奇怪的问题。 这是专用服务器IIS6上托管的asp.net(.net 3.5)网站。

最近,我有一个奇怪的行为,除非我转到iis并重新启动应用程序池或整个IIS,否则网站将挂起并且不会回复-但最奇怪的是,如果我转到服务器的远程桌面,尝试在本地访问它就可以了。

我由于内存泄漏和未关闭的SQL连接而阅读了有关死锁和挂起的几个线程,但是为什么它仍然可以从本地工作?

如果代码有问题–为什么它仍然可以在本地运行?

如果托管方面存在一些问题(例如防火墙问题),那么iisreset为什么有帮助?

任何想法将不胜感激。 谢谢!

我们刚刚遇到了这个问题,我们有一个解决方案。 IIS有两个线程池来处理请求。 一个线程池用于外部请求。 另一个池用于本地请求。 我们的问题是由后端代码中的死锁引起的。 一旦发生死锁,所有外部请求都将排队,但由于所有服务线程都在使用中而未得到服务。 从Web服务器打开网站使用另一个线程池,因此可以处理请求。 我们绝对肯定这是网络问题,但WinDbg证明不是这样。 请参阅此处以获取更多信息: 有关IIS和线程的MSDN博客条目

minLocalRequestFreeThreads

(此外,搜索minFreeThreads以查看非本地请求线程池。)

祝好运!

您确定该网站可为所有外部用户挂起,而不只是一个用户吗?

IIS每个用户一次只运行一个页面,因此,如果一个请求陷入永恒循环,则该单个用户将体验到服务器已完全停止,因为在该页面超时之前,所有页面都无法工作。 该服务器对于其他用户仍将照常工作。

您可以使用其他浏览器或启动同一浏览器的新实例(对于IE,而不是Firefox)进行测试。

信息不足,无法真正给您答案,但是如果防火墙从服务器本地响应,我将首先查看您的防火墙。 您是否在FW后面有其他服务器(例如SQL服务器)? 尝试从中浏览,因为它将向您显示问题所在。

我的虽然会配置错误的负载均衡器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM