查看原文
其他

ASP.NET Core WebAPI解决发布后每隔一段时间请求变缓慢

DotNet 2021-09-23

(给DotNet加星标,提升.Net技能

转自:codeIsArt
cnblogs.com/fanyang1/p/14110787.html

环境


  • 项目:.NET Core WebAPI 3.1


  • 平台:Windows Server 2008 r2


  • 服务器:IIS 7.5


前言

 

项目发布到IIS以后第一次请求特别慢大概7.8秒,然后每隔5分钟请求一次大概2.3秒,下面讲解下我的解决过程,如果心急的朋友直接看最后一步。


1、在IIS站点中设置HTTP响应头Cache-control


这个把当前请求页面缓存了,会出现2个账号登录显示的是相同页面,请求响应的时间并没有提高


 

2、在IIS应用程序池 高级设置


CPU限制间隔由原来5分钟更改为0,闲置超时由原来20分钟更改为0,也就是不受限制,但依然会出现休眠状态速度还是一样慢



3、在命令行切换到 当前项目目录 


使用.NET Core内置服务器Kestrel启动,问题依然没有解决



4、在接口中设置一个test参数直接返回OK


利用windows计划程序,每隔2分钟执行批处理文件 去请求唤醒它,问题还是存在



5、在IIS 7.5中安装 应用程序预热模块


下面是下载链接,2个组件都要安装,选择应用程序池设置AlwaysRunning,但是没有生效问题依旧存在


预热组件下载地址:http://www.iis.net/downloads/microsoft/application-initialization


预热配置界面下载:http://www.it165.net/uploadfile/2013/0601/20130601104150404.zip


 


6、升级服务器到Windows Server 2012或更高


安装IIS 8.0,注意安装IIS时候选择上 应用程序初始化  ,应用程序池启动模式:

AlwaysRunning、闲置超时:1740分、网站预加载已启用:True,最后问题解决!





- EOF -


推荐阅读  点击标题可跳转
IIS应用程序池配置详解及优化如何在 ASP.NET Core 中使用功能开关使用Excel和Math.Net进行曲线拟合和数据预测


看完本文有收获?请转发分享给更多人

推荐关注「DotNet」,提升.Net技能 

点赞和在看就是最大的支持❤️

: . Video Mini Program Like ,轻点两下取消赞 Wow ,轻点两下取消在看

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存