IIS服务器应用程序定点回收的问题

由于IIS服务器,一段时间如果没有用户访问,它就会进行回收,所以为了尽量给用户带来更好的体验,我设置了凌晨2点的时间进行定时回收。
image.png
但是我现在还有一个问题,就是应用程序回收了,相当于关闭服务了,那么每天早上,第一个用户访问时,还是会出现网站访问过慢的问题,因为程序在第一个用户访问时,就要等待程序的重启,然后再建立连接,我该如何优化这个应用程序回收的问题?

我现在想的是,我如何能够在凌晨2点回收应用池程序,然后在6点的时候就启动应用池程序。

阅读 2.1k
1 个回答

首先就不应该回收

应用程序池回收仅当一种情况下才有意义:一个 IIS 中承载了很多应用站点,但硬件资源有限,需要定期腾地方。

除非你的 GC 是有问题的,且代码里存在内存泄漏自己还不知道怎么去解决,只能靠定时回收防止内存不断增长。否则对于一个热点应用压根就不应该回收它 ———— 你腾出来的CPU、内存是想给谁用?

非要这么做的话,IIS 7.5 之后提供了预热(Warm-Up)功能。

再低版本的话你只能再开一个定时任务了,定时去请求一下自己的站点,使其保持活跃状态,减少冷启动时 JIT 带来的额外耗时。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进