如何调试SessionStateModule / REQUEST_AQUIRE_STATE取>一半的请求100秒?

时间:2012-06-28 17:47:03

标签: c# asp.net .net iis iis-7.5

这在最近几天开始发生;可能是因为我安装了Visual Studio 2012.它目前只发生在我的机器上(我的同事们都在VS 2010上),但我希望卸载VS 2012,看看是否有影响。

我的所有网络请求中约有50%在SessionStateModule / REQUEST_AQUIRE_STATE中挂起约100秒(然后页面成功完成)。

ANTS Profiler一直报告为“等待同步”,并在某些IIS线程回调中给出了堆栈跟踪(我们的代码都没有;遗憾的是我没有信息可用)。

我为所有请求启用了IIS失败请求跟踪,并重新加载了我们应用的同一页面10次。请求3,5,7,9全部采用> 100秒,其他人服用< 5秒。

我们正在使用In Process会话,因此没有任何内容通过网络或被序列化。据我所知,在发生这种情况之前,我们的代码都没有运行过。

如何获得有关调试问题的更多信息?

IIS Failed Request Trace screenshot

可能相关:

Browser waits for ajax call to complete even after abort has been called (jQuery)

2 个答案:

答案 0 :(得分:2)

这是.NET 4.5中的一个错误;请参阅此页面上的“问题6”:

http://support.microsoft.com/kb/2828841/en-us

答案 1 :(得分:0)

听起来RC .NET 4.5中可能存在错误。首先我会尝试卸载。否则,为了进行故障排除,您可以使用以下文章创建自己的会话状态模块处理程序,也许您将能够看到在您的应用程序中将会话模块绊倒。

http://msdn.microsoft.com/en-us/library/system.web.sessionstate.sessionstateutility.aspx#Y969