我正在开发一个启用了重叠回收的应用程序。由于我们实施了 IProcessHostPreloadClient 来在工作进程可用之前执行一些耗时的预热,因此进程初始化时间可能非常长。
令我惊讶的是,如果用户进入 IIS Management Studio,并在回收完成所需的时间内反复按下回收键(用户或测试人员通常都会这样做!),我最终可能会同时运行 3、4 个或更多工作进程。我原本预计最多有两个,因为我认为 IIS 会识别出它正处于回收的中途并丢弃任何“重复项”
所以我的问题是:是否可以将重叠回收限制为单个重叠回收,而不是多个?
答案1
这没什么可担心的,是正常的。
这些进程实际上并不是“重复”。当使用重叠回收来回收池时,旧池会继续运行,以在关闭之前为当时正在运行的任何剩余请求提供服务。
因此,当您在短时间内不断点击回收时,您总是会留下一串正在逐渐消退的水池。
后续请求将始终影响新启动的工作进程。