asp.net 4.0应用程序首次访问速度太慢

asp.net 4.0应用程序首次访问速度太慢,asp.net,performance,iis,Asp.net,Performance,Iis,我有一个使用asp.NET4.0和EF开发的web应用程序。但是它的启动时间太慢了22秒。之后,所有页面在1秒内可用。 我在VS2010上发布了一个干净的版本后发布了这个网站。我应该做些什么来提高启动性能并减少这次的损失? 在我的网络配置中: <compilation debug="false" batch="false" > 您是在发布网站之前对其进行预编译,还是只上传.apx和代码隐藏文件 第一次访问页面时,需要对其进行编译,因此,通过在发布之前对其进行预编译,可以在首次访问页

我有一个使用asp.NET4.0和EF开发的web应用程序。但是它的启动时间太慢了22秒。之后,所有页面在1秒内可用。 我在VS2010上发布了一个干净的版本后发布了这个网站。我应该做些什么来提高启动性能并减少这次的损失? 在我的网络配置中:

<compilation debug="false" batch="false" >

您是在发布网站之前对其进行预编译,还是只上传.apx和代码隐藏文件

第一次访问页面时,需要对其进行编译,因此,通过在发布之前对其进行预编译,可以在首次访问页面时节省大量时间。如果您不这样做,那么它将在访问时自动编译

就速度而言(无论如何第一次访问),顺序(最快的第一次)为:

  • 预编译不可更新
  • 预编译可更新
  • 无预编译
  • 设置
    debug=“false”
    也是一个好主意,您正在这样做。如果您有一台生产服务器,并且不需要对其进行任何调试,您还可以在
    machine.config
    中设置零售标志,默认情况下,这将强制所有站点执行
    debug=“false”

    <configuration>
        <system.web>
            <deployment retail="true"/>
        </system.web>
    </configuration>
    
    
    
    这也将禁用页面输出跟踪并强制自定义错误页面

    有关更多信息:


    您是在发布网站之前对其进行预编译,还是只上传.apx和代码隐藏文件

    第一次访问页面时,需要对其进行编译,因此,通过在发布之前对其进行预编译,可以在首次访问页面时节省大量时间。如果您不这样做,那么它将在访问时自动编译

    就速度而言(无论如何第一次访问),顺序(最快的第一次)为:

  • 预编译不可更新
  • 预编译可更新
  • 无预编译
  • 设置
    debug=“false”
    也是一个好主意,您正在这样做。如果您有一台生产服务器,并且不需要对其进行任何调试,您还可以在
    machine.config
    中设置零售标志,默认情况下,这将强制所有站点执行
    debug=“false”

    <configuration>
        <system.web>
            <deployment retail="true"/>
        </system.web>
    </configuration>
    
    
    
    这也将禁用页面输出跟踪并强制自定义错误页面

    有关更多信息:


    这可能是因为在首次加载站点时有大量全局静态数据正在初始化。只需检查您是否在版本(非调试)模式下编译这可能是因为在首次加载站点时有大量全局静态数据正在初始化。只需检查您是否在版本(非调试)模式下编译mode由于站点是一个web应用程序,它已经预编译。因此,它与预编译无关。由于站点是一个web应用程序,它已经预编译。因此,它与预编译无关。