AcquireRequestState中的长延迟

Gre*_*der 24 asp.net webforms newrelic

使用性能监视工具"New Relic"我在"AcquireRequestState"中偶尔会看到(但是太多)长时间延迟.我说的是10秒,20秒延迟,有时是几分钟.

我知道我们没有为此活动编写自己的事件处理程序.

我在哪里开始寻找这些延迟的原因?我到目前为止在msdn上发现的一些小信息都没有用.

小智 5

尝试在服务器上应用修补程序汇总 2828841 。

第6期

症状

当您向 ASP.NET 4.5 Web 应用程序发送许多具有相同 SessionId 的并发请求时,某些请求可能会意外冻结在 RequestAcquireState 阶段。

解决

应用此修补程序后,修补程序将确保 EndRequest 事件始终触发。

此修补程序适用于 Windows 7 Service Pack 1 (SP1)、Windows Server 2008 R2 SP1、Windows Server 2008 Service Pack 2 (SP2) 和 Windows Vista SP2。


Jon*_*der 5

我的团队今天早些时候看到了NewRelic报告的"AcquireRequestState"延迟,当时我们的一个ASP.NET应用程序在特定页面上出现了性能问题.

根本原因是我们最近部署到我们的SQL Server数据库的存储过程的更改,这无意中导致该存储过程需要很长时间才能执行.存储过程被称为显示具有性能问题的页面的一部分.

我们能够通过识别和修复存储过程的性能问题来解决该问题.原来,NewRelic的"AcquireRequestState"问题无关紧要; 这是问题的症状,而不是原因.

这是在Windows Server 2008上运行的ASP.NET 4.5应用程序.

tl; dr: NewRelic报告的"AcquireRequestState"延迟可能是导致ASP.NET应用程序中的一个或多个页面和/或AJAX请求需要很长时间才能加载的其他问题的副作用.