您好,非常感谢您的任何建议。
我在Windows2012 Server IIS8上托管了一个C#.NET 4.0 MVC应用程序(虽然可以在W2008R2和IIS7.5上复制相同的问题)。
每个新会话加载大约需要10秒。 这与"空闲超时"无关。我的空闲超时设置为120分钟。 我打开Chrome和IE,在一个浏览器中转到退出页面,需要10秒钟。 一旦页面加载(我假设应用程序被编译等)我使用IE进入同一页面 - 它需要10秒。如果我刷新页面 - 我会在大约1秒后恢复,就像任何后续页面的情况一样。如果我关闭浏览器并立即再次启动它 - 再次打开第一页需要10秒钟。 我一直在localhost上尝试,以消除与网络相关的延迟。
我确实试过"监控" IIS使用
C:\Windows\System32\inetsrv>appcmd list requests
REQUEST "fb0000048000c8d0" (url:GET /logout, time:9828 msec, client:fe80::4e6:dd83:6fd2:c1f8%12, stage:AcquireRequestState, module:Detector)
我可以看到Worker Process占用的时间最多。 我正在使用" logout" -page,因为它不安全。这里的Web.config读取
<location path="logout">
<system.web>
<authorization>
<allow users="*" />
</authorization>
</system.web>
</location>
最后在我的Controller中,我介绍了调试打印并将它们复制到cshtml页面上:
2013-04-30 13:09:48,784 [56] ERROR [(null)] <(null)> - Start Controller
2013-04-30 13:09:48,842 [56] ERROR [(null)] <(null)> - Return view in Controller
视图上的输出: 30/04/2013 13:09:50
让我相信控制器的执行和View的渲染不会导致延迟。
非常欢迎任何想法或评论,非常感谢。如果缺少任何信息,请道歉。