代码之家  ›  专栏  ›  技术社区  ›  David Klempfner

为生产设置compliation debug=false

  •  1
  • David Klempfner  · 技术社区  · 6 年前

    在Pro ASP中。NET MVC5它说您需要设置 <compilation debug="false"/> <system.web> 第节 Web.config 如果要部署到生产环境。

    为什么会这样?

    如果你离开会发生什么 debug="true" 在生产中?

    1 回复  |  直到 6 年前
        1
  •  2
  •   David Klempfner    6 年前

    调试模式导致ASP。NET编译具有额外信息的应用程序,这些信息使调试器能够密切监视和控制应用程序的执行。在调试模式下编译的应用程序按预期执行。但是,应用程序的性能会受到影响。为了避免对性能的影响,最好只在开发人员进行交互式故障排除时启用调试。默认情况下,调试处于禁用状态,尽管经常启用调试来解决问题,但在问题解决后,也经常不会再次禁用调试。

    1) ASP的编译。NET页需要更长的时间(因为某些批处理优化被禁用)

    2) 代码可以执行得更慢(因为启用了一些额外的调试路径)

    3) 在运行时,应用程序中使用了更多的内存

    4) 从WebResources下载的脚本和图像。未缓存axd处理程序