有没有办法在.NET Core中完全绕过coldstart?

时间:2018-05-24 06:37:02

标签: .net-core asp.net-core-2.0

很长一段时间以来,.NET应用程序的第一个请求需要很长时间才能响应,有时会长时间以至于会严重降低用户体验并导致客户离开。

几乎所有解决方案都只是通过间隔轮询或通过更改IIS的空闲时间等来保持应用程序的活动。

现在我想知道是否有一种机制可以让我们系统地减少冷启动时间,而不是通过入侵它?

1 个答案:

答案 0 :(得分:1)

这里有几个选项:

在IIS中托管时,请禁用空闲时间,重新启动等。另请注意,IIS无法在没有传入请求的情况下自动启动asp.net核心应用程序。设置轮询任务是一个选项。

.NET Core 2.1具有更好的启动性能,还有一个额外的选项可以启用分层JIT编译(参见this GitHub issue)。

另请注意,启动时间越长,启动时间越长。例如。执行EF Core数据库迁移等。