有关IIS应用程序池配置的问题

有关IIS应用程序池配置的问题,iis,application-pool,Iis,Application Pool,我对IIS应用程序池配置有一些问题。 我知道idleTimeout指定如果没有收到新请求并且工作进程没有处理请求,那么工作进程应该空闲运行多长时间。在分配的时间过后,工作进程应该请求WWW服务关闭它(取自)。我的问题是,当请求在关闭后到达时,工作进程何时以及如何启动 另一个问题是应用程序池回收和关闭之间的区别是什么?重新启动而不是关闭然后重新启动是否更好?工作进程何时以及如何启动?当新请求传入时,IIS会为您的网站正在运行的应用程序池旋转一个新进程 关闭和回收之间的区别在于,在回收过程中,并行启

我对IIS应用程序池配置有一些问题。
我知道idleTimeout指定如果没有收到新请求并且工作进程没有处理请求,那么工作进程应该空闲运行多长时间。在分配的时间过后,工作进程应该请求WWW服务关闭它(取自)。我的问题是,当请求在关闭后到达时,工作进程何时以及如何启动


另一个问题是应用程序池回收和关闭之间的区别是什么?重新启动而不是关闭然后重新启动是否更好?

工作进程何时以及如何启动?当新请求传入时,IIS会为您的网站正在运行的应用程序池旋转一个新进程

关闭和回收之间的区别在于,在回收过程中,并行启动应用程序池的新进程,而现有进程仍在为现有请求提供服务。传入的任何新请求都由新流程处理。因此,实际上您不会丢失任何传入的请求,也不会过早地丢弃任何现有请求。在关机时,当应用程序关闭时,您将释放请求

要查看此实时操作-打开任务管理器,请选择“进程”选项卡,查看IIS启动应用程序池进程,并注意关机和回收之间的行为。在一个短暂的循环过程中,您将看到同一个应用程序池的两个进程


请参阅此视频以更好地了解:

那么为什么人们允许关闭工作进程?为什么他们不直接回收应用程序池呢?通常建议回收而不是关闭。关机应该是最后的手段,例如,当有一个现有的请求,CPU使用率高,而且不完整,它影响你的新请求被服务时,你应该求助于关机。@ Naor,考虑你在一个服务器上有上百个站点,并且很多站点经常不被访问,然后,明智的决定是关闭这些站点的工作进程,以便减少内存使用。空闲关闭是优雅的,当工作进程仍在处理请求时不会发生。@Lex Li:但是关闭进程可能会导致异常,因为没有人处理请求。