【问题标题】:ASP.NET 5 MVC 6 precompile - improve performanceASP.NET 5 MVC 6 预编译——提高性能
【发布时间】:2015-12-31 08:34:05
【问题描述】:

我有一个应用程序在我们的 IIS 8 服务器上内部运行。我正在使用一个空的 ASP.NET 5 模板,我正在使用 MVC6、EF7 包和其他一些包。

我使用 Database-First 来制作一个包含 200 多个表的相当大数据库的对象,这些表在我的 API 请求中使用。

此应用程序在启动它并向 api 端点发出 第一个 请求以编译(我认为?)后大约需要 2 分钟。第一个之后的请求几乎是即时的。

此外,当 IIS 服务器被重置(或在它被回收之后)时,第一个请求再次大约需要 2 分钟。

当我使用 ASP 4.5 (MVC5) 时,我可以在发布时进行预编译。这个选项似乎消失了。

但我真正的问题是:如何才能让我的应用程序在第一次请求时也能快速运行?

【问题讨论】:

    标签: c# asp.net iis asp.net-core asp.net-core-mvc


    【解决方案1】:

    当您发布时,默认情况下,dnu 会发布源代码,并在服务器启动时即时编译它们。

    您可以使用--no-source 选项来预编译所有内容。这应该会加快启动速度(--runtime 是可选的):

    dnu publish --no-source [--runtime active|<name of runtime>]
    

    【讨论】:

    • 这已经大大加快了应用程序的速度!仍然需要一段时间的是我的 DbContext 的“创建”。有没有办法通过对我的实体框架 DbContext 进行“创建(映射?)”来加快速度?
    猜你喜欢
    • 1970-01-01
    • 2016-11-25
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    • 2018-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多