ASP.NET * PRECOMPILED *但仍然很长时间启动

时间:2017-06-20 16:17:20

标签: asp.net signalr owin katana

我们有一个正在发布的“预编译”应用。当我们将它部署到服务器时,它会立即更新,不会中断,也不会暂停。这非常重要,因为该应用程序被1000多家公司使用

然后我们添加了SignalR。

反过来又带来了OWIN依赖。

现在,当我们更新时,预编译的应用程序会窒息9-10秒。 w3wp跳转到100%cpu负载。

我描述了进程cpu使用情况,我在最耗时的调用堆栈中看到了这一点:

System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start
Microsoft.Owin.Host.SystemWeb.OwinCallContext.AcceptCallback
System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start
Microsoft.Owin.Host.SystemWeb.OwinCallContext.AcceptCallback
System.Web.WebSocketPipeline+<>c__DisplayClass6.<ProcessRequestImplAsync>b__3
System.Web.Util.SynchronizationHelper.SafeWrapCallback
System.Web.Util.SynchronizationHelper.QueueSynchronous
System.Web.WebSocketPipeline+<ProcessRequestImplAsync>d__8.MoveNext
System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start
System.Web.WebSocketPipeline.ProcessRequest
//...skipped
等等,什么? “CompilerServices”?

显然,OWIN正在做背景上的一些编译工作......或者是其他什么?

有人面对这个吗?任何解决方法?

SignalR在启动期间做了什么?

更新:我们尝试EnableJavaScriptProxies = false;我们也尝试了自己的IAssemblyLocator - 两者都没有帮助。

0 个答案:

没有答案