ASP.NET网站与ASP.NET WebApp:性能差异是什么?

时间:2010-09-18 19:03:49

标签: asp.net performance

多次询问Difference between an ASP.NET Website and ASP.NET Web Application。但是,我无法找到我的问题的答案,即使用其中一个是否存在任何真正的性能差异。此外,我的理解是网站项目是动态编译的;这是否意味着每次请求编译请求的页面?

2 个答案:

答案 0 :(得分:4)

让我们在这里做出假设,任何进行实际测试的人都可以加两分钱。

应用程序启动速度差

网站开始:

  • 网站编码的代码较少=>更快
  • 网站必须编译+ JIT compile =>双重工作

Web应用程序启动:

  • 只需要JIT compile =>单一工作
  • 必须编译整个程序集(或者其中几个程序集)=>因为有更多的代码需要编译,所以速度会慢一些

运行应用程序速度差

当访问网站的所有页面时,不再存在任何速度差异。没有编译发生,代码只是运行。在这方面,两种类型的Asp.net应用都是相同的。

代码更改差异化

网站:

  • 更改特定文件会减慢该特定文件的速度,因为它必须编译+ JIT再次编译它

WEBAPPLICATION:

  • 任何更改都意味着重新编译整个程序集,这意味着在服务器上进行更多的JIT编译。

答案 1 :(得分:1)

对于asp.net网站,页面会根据需要动态编译。 AKA - 第一次访问或更改时。

我认为在两种解决方案之间进行编译后,性能差异很小/完全不同。这两种解决方案专为满足不同的需求而设计。

通过动态编译,您可以在服务器上放置一个新代码,然后它将识别新文件,并在下一个人访问它时重新编译。这样可以灵活地更新您的网站。

但是,Web应用程序与网站相比具有许多优势。请参阅此blog post for和this one,以便对两者进行比较。