不同形式的预编译会影响性能吗?
Posted
技术标签:
【中文标题】不同形式的预编译会影响性能吗?【英文标题】:Do the different forms of precompilation impact performance? 【发布时间】:2014-09-08 03:35:04 【问题描述】:我正在使用 MVC3、ASP.NET4.5 和 C#
预编译 Web 应用程序时有多种选择:
-
不要合并。
不要合并,为每个页面和控件创建一个单独的程序集。
将所有输出合并到一个程序集中。
将每个单独的文件夹输出合并到自己的程序集中。
将所有页面和控制输出合并到一个程序集中。
我正在部署到 Azure 网站。
我目前选择了 3,它创建了一个 2.5MB 的程序集。
我意识到此时生成的 PCCode 已准备好让 Jitter 在运行时创建 Native 代码,因此性能应该是相同的。但是我想知道这些选项之间是否仍然存在性能差异。我目前选择了选项 3,因为它看起来更整洁。
谢谢。
【问题讨论】:
唯一确定的方法是分析和基准测试。你的结果说明了什么? 【参考方案1】:应该会根据您选择的合并选项对性能产生影响。多大?未经测试不确定,但直观地说,如果有更多程序集和文件供您的应用程序访问,则应该比访问单个程序集花费更长的时间。我的猜测是差异很小。程序集本身不会对性能产生影响,但在未合并的情况下您的性能会受到轻微影响,因为在运行时需要处理更多文件。
可能有帮助的其他资源:
Additional Precompile Settings Dialog Box
ASP.NET Merge Tool, Compilation and Merge Scenarios
【讨论】:
以上是关于不同形式的预编译会影响性能吗?的主要内容,如果未能解决你的问题,请参考以下文章