IIS 解决首次加载慢的问题

  1. 在【启动或关闭Windows功能(Turn Windows features on or off)】中打开【应用程序初始化(Internet Information Services->World Wode Web Services->Application Development Features->Application Initialization)】

    2 站点高级设置(Advanced Settings)
    预加载已启用(Prelaod Enabled)->True

    接着配置(配置编辑器 Configuration Editor)当站点启动时自动访问的网页,以实现预加载

remapManagedRequestsTo :
若要指定初始化期间要返回的静态文件的名称,请将remapManagedRequestsTo设置为该文件的名称

如果不想加载托管模块,请将skipManagedModules设置为true,比如ASP.NET Core

要指定每当应用程序重新启动时自动启动初始化过程,请将doAppInitAfterRestart设置为true。

在集合编辑器中,要添加要初始化的应用程序,请单击“添加”,单击“主机名”,然后将主机名设置为主机名。单击initializationPage并将其设置为应用程序的URL。关闭对话框

如果配置了预加载,在下面的设置中,可以考虑设置应用程序池定时回收

  1. 应用程序池高级设置(Advanced Settings)
    启动模式(Start Mode)-> AlwaysRunning
    固定时间间隔(分钟)(Regular Time Interval)->0
    闲置超时(分钟)(Idle Time-out)->0

重新启动会让正在访问的网页显示

  1. HTTP Error 503.0 - Server has been shutdown
  2. ERR_CONNECTION_RESET
  3. 正常访问

回收应用程序池 则不会影响 正在访问的网页

参考:
https://docs.microsoft.com/en-us/iis/get-started/whats-new-in-iis-8/iis-80-application-initialization

https://docs.microsoft.com/en-us/iis/configuration/system.webserver/applicationinitialization/

posted @ 2020-11-14 11:15  ChasingDreams  阅读(1467)  评论(0编辑  收藏  举报