3

我在 Windows 2008 x64 服务器、ASP.NET MVC 和 .NET 框架 4 上使用 IIS 7.5。

如果我在我的 Web 应用程序运行并且用户登录时回收应用程序池,1) 用户的会话和相关数据是否会被破坏,他们是否必须重新登录?而且,在我回收时正在进行的请求会失败,还是 IIS 会在执行回收之前完成这些请求?

在使用应用程序时回收我的 Web 应用程序的应用程序池有什么负面影响?

4

1 回答 1

7

如果您在内存中进行会话管理,那么您可能会遇到一些问题。如果您正在进行适当的会话管理(例如,在数据库中),那么用户应该没问题。当新应用程序出现并开始将内容加载到内存中以服务请求时,您将遇到速度变慢。

正在进行的请求有机会完成,但机会有限(默认情况下它们有 90 秒)。

回收的缺点基本上分为两类:

  1. 您必须将所有内容重新加载到内存中(这需要时间,在此期间用户正在等待)。

  2. 长时间运行的请求将被终止(默认情况下,应用程序池有 90 秒的时间来完成其业务,例如长文件上传/下载可能必须重新启动,因为它与回收重叠)。

于 2012-08-27T22:04:55.970 回答