应用程序池重置会发生什么?

24

当 IIS 7 中的应用程序池被回收时会发生什么?IIS 是否突然停止该网站上的所有内容,会对用户造成影响吗?还是它会在不知不觉中进行,用户永远不会注意到任何事情?

我们应该进行回收吗?这样做的利弊是什么?

我正在考虑在每天深夜低流量时进行回收。有什么最佳实践、建议吗?

谢谢!

1个回答

33

如果你真正需要的是应用程序池回收(Application Pool Recycle),那么这是一种在线操作。它将创建一个新的w3wp进程来处理随后的请求,而先前的w3wp进程有一定时间来完成所有未完成的请求(默认为90秒)。由于需要重新加载内存中的项目,因此会对性能产生影响,但不会有停机时间。

如果你遇到了内存泄漏问题,进行夜间回收,然后进行某种预热(以加载项目到内存中)是个好主意,但真正的优势在于能够在低负载期间进行预热(否则,最好直到实际必要时再进行回收)。

如果你真正需要的是重置(通常称为IIS重置,或者对于应用程序池是停止,然后启动),那么是的,会有停机时间。如果可以避免,就不应该这样做。


1
为增加价值,这是一篇非常好的文章,描述了应用程序池回收时会发生什么 https://blogs.msdn.microsoft.com/david.wang/2006/01/26/thoughts-on-application-pool-recycling-and-application-availability/。文章中的评论也值得一读。 - sh_kamalh

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接