我一直试图找到一个瓶颈,我相信它在我们的控制器内(我怀疑是Unity IoC). 从使用MVC-Mini-Profiler,我发现了一个需要500ms才能完成最简单任务的方法. 然而,在使用DotTracer追踪到它之后 – 它似
从使用MVC-Mini-Profiler,我发现了一个需要500ms才能完成最简单任务的方法.
然而,在使用DotTracer追踪到它之后 – 它似乎只花了16ms来执行线程……
以前有人碰过这个吗?
需要注意的是 – 在Web.Config中将调试模式设置为false
我已经发现了这个问题的解决方案 – 事实证明它与会话有关.因为我同时向同一服务器发出了4个HTTP请求,所以会话对象每次都被锁定,从而迫使我的请求排队并在会话对象解锁后处理.
添加:
[SessionState(SessionStateBehavior.Disabled)]
作为属性向控制器强制MVC2向上变为无会话,从而将性能提高十倍
(答案取自:
Why would multiple simultaneous AJAX calls to the same ASP.NET MVC action cause the browser to block?)