IIS+ASP.NET MVC都应该知道的事

作者 : 开心源码 本文共709个字,预计阅读时间需要2分钟 发布时间: 2022-05-12 共154人阅读

问题现象

ASP.NET MVC 站点部署在IIS上后,第一个客户第一次访问站点,都会比较慢,确切的说是访问站点的Action页面(即非静态页面,由于静态页面直接由IIS解决返回给客户即完成请求,而Action页面IIS要转交给Aspnet_Wp工作进程,进而涉及相关初始化操作,这些初始化操作是比较慢的。第二次访问站点就不需要再初始化了所以就快了)。

这种第一次访问慢的问题不仅发生在网站第一次部署启动,也发生在站点重启和站点程序池回收(经测试,第一次部署启动初始化所用时间会多少量,而后是站点重启,而后是站点回收)。

1、站点重启包含手动重启和修改web.config配置、修改IIS上站点配置、升级站点bin目录的dll等引起的自动重启。假如你的站点是新上线的web或者者会持续修改增加功能的web,那难免会升级dll导致重启。其它编译型语言(比方java)也是如此,升级了服务端组件,都难免要重启站点。这边会分享.net环境下如何优化此问题;

2、站点程序池回收是IIS建议的,原本默认是29小时回收一次。为什么要建议回收呢,大致可以这样了解:一个每日定时回收的机制就像是在发生轻微内存泄露或者者其它拖累Worker进程的因素的情况下,刷新IIS的良药,站点回收即节省了资源又提高了稳固性。

然而,自动回收后第一次访问慢的问题困扰了许多人,其实只需略微设置即可以处理,即没有困扰也拥有了回收的优点。

问题处理

1、先在IIS上设置相应应用程序池的“高级设置”(IIS版本要在8或者8以上,要知道IIS10早已出来了,假如你在用IIS很低的版本,而后在报怨IIS,我…),如下图,这样设置后,回收只会发生在凌晨04:00:00

IIS+ASP.NET MVC都应该知道的事

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » IIS+ASP.NET MVC都应该知道的事

发表回复