我们有一个在 IIS 7.5、Windows Server 2008 R2 Enterprise 上运行的生产应用程序 (ASP.NET MCV 3),我的问题是,该应用程序有时会变得无响应。发出的每个请求都需要永远,并且服务器没有返回任何结果。我的问题是:我应该在哪里寻找出错的地方,更重要的是,这些东西是什么。
我可以完全访问那台机器,所以如果可能需要任何其他信息(IIS/Windows 日志等),我可以提供。
谢谢,我希望这不是重复的。如果是这样,请指点我到另一个帖子。
最新发现:我也设法在我们的测试环境中重现了这个错误,但仍然不知道是什么原因造成的。当两个用户使用两个不同的用户帐户登录时,就会发生这种情况。在某些时候,提出了一个永远不会完成的请求。它没有超时,它只是说(待定)永远。回收应用程序池解决了这个问题。有什么想法吗?
更新:这似乎是一个应用程序池问题:当测试应用程序移动到 DefaultAppPool(因此使用 ApplicationPoolIdentity)时,故障不再出现。当我切换回 MyAppPool(以用户身份使用 NetworkService)时,应用程序再次开始冻结。因此,更改为 DefaultAppPool 应该是正确的举措。不幸的是,这并不(而不是不能)适用于生产服务器。在那里,用户必须是特定的用户才能执行一些文件上传/下载到/从私有 NAS。我怎么可能让事情从这里开始?代码用户冒充?克隆 ApplicationPoolIdentity 用户权限?