ASP.NET MVC 网站在连接到外部数据库时冻结

本文关键字:外部 数据库 冻结 连接 NET MVC 网站 ASP | 更新日期: 2023-09-27 18:33:44

今天我想出了我们网站上一些非常奇怪的东西。我们遇到了性能问题。IIS 7.5(Windows 2008(上的 Asp.NET Mvc Web每隔X次就会被冻结。它是一个普通的电子商务系统,连接到同一基础设施上的MSSQL服务器。但是,当您进入产品的详细页面时,我们会在页面加载后通过AJAX询问库存,我们有 2 个仓库,我们必须询问库存。

今天,另一个仓库遇到了服务器问题,从我们的电子商务网站到该服务器的连接(外部和简单的连接与 1 个查询询问库存(每次连接到此服务器都超时。但正如我所说,这个外部服务器不涉及更多,因为 ajax 调用中的查询。

奇怪的是,所有用户(整个IIS池(在与此外部服务器建立连接时都会被冻结。连接超时后,所有请求都会得到处理,但在此之前不会处理。

正常吗?我认为所有请求都是在自己的"线程"中完成的。PD它不是链接服务器或其他东西。它与那里和 1 个查询的直接连接,仅此而已。

一些建议?

ASP.NET MVC 网站在连接到外部数据库时冻结

鉴于体系结构的非常笼统的描述和提供的诊断信息有限,发生这种情况的原因有很多

但是,我想到的一件事值得检查。 可用的 IIS 工作线程和完成端口只有这么多。如果所有(或非常多(工作线程最终都在等待失败的连接,则没有(或很少(工作线程可用于处理其他请求。

如果可以在开发或 QA 中重现问题(例如,通过故意错误配置连接(,则可以尝试诊断 IIS 的状态。 查看本指南:

http://www.orcsweb.com/blog/terri/troubleshoot-iis-application-hangs-unresponsiveness/