IIS配置优化(预加载)

应用程序池配置

打开IIS管理器,找到站点应用程序池,选中站点应用程序池,在右侧操作边栏单击高级设置,按照下图(图1)红框内容进行配置。

图1

配置说明:

常规->队列:微软建议设置预期用户数的1.5倍。

修改IIS队列长度:https://docs.microsoft.com/zh-cn/previous-versions/office/communications-server/dd441171(v=office.13)

常规->启动模式:设置AlwaysRunning(始终运行模式下运行),保证程序池创建或回收后,再次启动。

回收->固定时间间隔(分钟):默认1740分钟回收,这样会导致可能在站点高峰期回收,设置0,使用特定时间回收资源。

回收->特定时间:根据实际情况,在网站访问低峰回收资源,设置零晨4点(24小时制)。

进程模型->Ping最大响应时间(秒):默认90改为120。

进程模型->启用时间限制(秒):默认90改为120。

进程模型->闲置超时(分钟):改为0,避免内存信息频繁回收清空。

IIS应用程序初始化(预加载)

应用程序初始化,解决第一次访问慢的问题。

安装IIS应用程序初始化

打开服务器管理器,点击添加角色和功能,进入选择服务器角色向导,找到Web服务器(IIS)->Web服务器->应用程序开发,选择应用程序初始化(图2),然后下一步进行安装。


图2

配置站点预加载

打开IIS管理器,找到站点,在右侧操作边栏单击高级设置,按照下图(图3)红框内容进行配置。

图3

向站点web.config添加applicationInitialization和initializationPage元素。

<system.webServer>
   <applicationInitialization doAppInitAfterRestart="true">
      <add initializationPage="/Home/PreLoading" hostName="" />
   </applicationInitialization>
</system.webServer>

配置说明:

doAppInitAfterRestart=true:每当应用程序重新启动时自动启动初始化过程。

initializationPage="/Home/PreLoading":初始化访问的页面(MVC/API),可以提前预加载数据(缓存)或访问一次数据库(EF 初始化),提高访问效率。

hostName:不填写默认当前路径。

基于 Windows Server 2019 Standard, IIS 10(Internet Information Services 10)

posted @ 2022-02-09 17:54  TC-MrLee  阅读(1525)  评论(0编辑  收藏  举报