ASP.NET MVCWeb API首次访问慢,有哪些长效策略可完美解决?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1047个文字,预计阅读时间需要5分钟。
问题现象:访问asp.net web项目的时侯,第一次访问比较慢,当空闲设置一段时间后,再次访问还会非常慢。问题原因:这是IIS回收造成的,再次访问的时间会初始化操作,初始化需要消耗时间。
问题现象
访问asp.net web项目的时候,第一次访问比较慢,当闲置一段时间后,再次访问还是会非常慢。
问题原因
这是IIS回收造成的,再次访问的时候会初始化操作,初始化需要耗费时间,所以访问会比较慢,第二次访问的时候不需要初始化操作,因此变快了。
解决办法
IIS应用初始化会在网站第一次创建后或者对应网站的应用程序池回收后,自动开启新程序池,并启动网站初始化,模拟一次正常请求,使网站一直处于在线状态。
修改IIS中的配置
1.修改启用应用程序池(AlwaysRunning):保证应用程序池在第一次创建或者被回收后,能自动再次重启运行。
2.修改闲置超时1740分钟:长时间没有请求释放资源,可以不用修改。
3.修改启用网站程序预加载(true):保证程序池在启动过后,网站能响应预加载动作。
我看有些博客会将进程模型/闲置超时设置为0或者很长,觉得不太好。闲置超时是指如果你的应用程序未处理请求也未接受请求,则进入闲置状态,这个状态可以保持的时间,超过这个时间,则该进程将会从内存中删除并释放所有内容。
本文共计1047个文字,预计阅读时间需要5分钟。
问题现象:访问asp.net web项目的时侯,第一次访问比较慢,当空闲设置一段时间后,再次访问还会非常慢。问题原因:这是IIS回收造成的,再次访问的时间会初始化操作,初始化需要消耗时间。
问题现象
访问asp.net web项目的时候,第一次访问比较慢,当闲置一段时间后,再次访问还是会非常慢。
问题原因
这是IIS回收造成的,再次访问的时候会初始化操作,初始化需要耗费时间,所以访问会比较慢,第二次访问的时候不需要初始化操作,因此变快了。
解决办法
IIS应用初始化会在网站第一次创建后或者对应网站的应用程序池回收后,自动开启新程序池,并启动网站初始化,模拟一次正常请求,使网站一直处于在线状态。
修改IIS中的配置
1.修改启用应用程序池(AlwaysRunning):保证应用程序池在第一次创建或者被回收后,能自动再次重启运行。
2.修改闲置超时1740分钟:长时间没有请求释放资源,可以不用修改。
3.修改启用网站程序预加载(true):保证程序池在启动过后,网站能响应预加载动作。
我看有些博客会将进程模型/闲置超时设置为0或者很长,觉得不太好。闲置超时是指如果你的应用程序未处理请求也未接受请求,则进入闲置状态,这个状态可以保持的时间,超过这个时间,则该进程将会从内存中删除并释放所有内容。

