繁体   English   中英

ASP.NET MVC与WebForms的大项目首页加载速度

[英]ASP.NET MVC vs WebForms for First Page Load Speed for Big Projects

我们有一个非常大的ASP.NET WebForm(Web应用程序)项目,其中包含大量对其他库,其他项目等的引用,并且大部分时间在编译之后,我们第一次加载页面时需要很长时间才能呈现任何内容...磁盘IO是主要问题。 对于小型项目来说,它几乎是即时的,但是一旦你的项目变大,它就会真正减慢开发速度并消除编程带来的乐趣。

我的问题:在ASP.NET MVC中编译之后的第一页加载时间与在大型项目的ASP.NET Webforms中一样吗?

MVC仍然使用与Web窗体相同的ASP.NET框架,因此您可能会看到类似的行为,无论如何。

首次加载时间较长是因为项目的构建输出仍然只是需要在执行之前由JIT编译器编译为本机代码的IL代码。 您所做的任何代码更改都将导致您的应用程序的先前缓存的本机代码被丢弃,因此JIT必须重新编译。 当然,项目越大,JIT处理它的时间就越长。

您将在两种环境中看到类似的加载时间。

在这两种环境中,如果您的站点变大,您应该在部署之前预先编译您的站点。 这将消除首页加载时的性能拖累。

有很多事情可以做,以提高性能,为了提供MVC应用程序中的关注点分离的增强可以帮助很多。 虽然默认视图引擎重新使用webforms,但是视图具有比典型webforms更简单的控制堆栈,这有很大帮助,甚至没有提到替代视图引擎。

“第一个视图”的命中来自于必须JIT在项目中使用的大量类/对象,它是第一页。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM