带有SQL Server的.NET MVC应用程序上的神秘超时



我有一个非常特殊的问题,我正在寻找可能有助于我深入了解它的建议。

我在SQL Server 2008 R2数据库上的.NET 3.5(MVC3)中有一个应用程序。

在本地和另外两台服务器上,它运行良好。但是在实时服务器上,有一个存储过程总是在 30 秒后超时。

如果我在数据库上运行存储过程,则需要几秒钟。但是,如果应用程序收到存储过程,则探查器表示它花费了 30 多秒。如果我们直接在数据库上运行它,则分析器收到的相同查询会立即运行。

此外,其他 3 台本地服务器中的任何一台都不会发生相同的问题。

如你所知,这让我发疯,我什至不知道如何诊断这一点。偶数日志只是将超时显示为警告。

以前有没有人遇到过这样的事情,我可以从哪里开始寻找修复?

非常感谢

应用程序中可能发生

了一些锁定,在服务器上运行查询时不会发生这些锁定。

若要对此进行测试,请使用READ UNCOMMITTEDNOLOCK提示在应用程序中运行查询。 如果它有效,您需要检查您的呼叫顺序或检查您的隔离级别是否不太激进。

这些可能很难确定。

最新更新