[英]ASP.NET Mvc Website freeze when connecting to external Database
今天,我在我们的网站上想到了一些非常奇怪的东西。 我们遇到了性能问题。 IIS 7.5(Windows 2008)上的Asp.NET Mvc网站每X时间冻结一次。 它是一个普通的电子商务系统,该系统在同一基础结构上连接到MSSQL Server。 但是,当您进入产品的“详细”页面时,页面加载后,我们会通过AJAX询问库存,我们有2个仓库必须向其询问库存。
今天,另一个仓库出现了服务器问题,并且从我们的电子商务网站到该服务器的连接(外部和简单连接,其中有一个询问库存的查询)已超时。 但是就像我说的那样,此外部服务器与ajax调用中的查询无关。
奇怪的是,与该外部服务器建立连接时,所有用户(整个IIS池)都会被冻结。 连接超时后,所有请求都将得到处理,但直到那时才处理。
正常吗 我认为所有请求都在自己的“线程”中完成。 PD不是链接服务器或其他东西。 它直接连接到那里和1查询,仅此而已。
有什么建议吗?
考虑到对体系结构的非常笼统的描述以及所提供的有限诊断信息,有许多原因可能导致这种情况发生。
但是,我想到了一件值得检查的事情。 只有这么多的IIS工作线程和完成端口可用。 如果所有(或非常多)工作线程最终都等待失败的连接,则将没有(或很少)工作线程可用于处理其他请求。
如果您可以在开发或质量检查中重现该问题(例如通过有意地错误配置连接),则可以尝试诊断IIS的状态。 查看以下指南:
http://www.orcsweb.com/blog/terri/troubleshoot-iis-application-hangs-un responseness /
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.