ASP.NET通常会回收其应用程序的频率(AppDomains)

时间:2012-11-29 18:30:27

标签: asp.net asp.net-mvc

我在Applications_Start方法(Global.asax)中初始化我的Web应用程序的静态。那时我写了一条消息来记录。突然间,我意识到这种方法每隔10分钟被调用一次。

是否纠正了行为?我希望ASP.NET能够将其应用程序保留至少几个小时。

2 个答案:

答案 0 :(得分:1)

您的期望不正确。这是在IIS配置中的应用程序池设置中设置的。我认为默认值是20分钟。如果不应回收应用程序池,则可以将其更改为0.

答案 1 :(得分:0)

这不典型。有些东西导致它重新启动,它不应该经常这样做。查看How to find out why an ASP.NET web application is being restarted问题,了解如何记录重新启动原因的详细信息。

由于您正在写出日志文件,因此您可能正在将它们写入要监视以进行重新编译的位置,这将导致应用程序域重新启动。查看帖子What causes an application pool in IIS to recycle?

查看iis.net上的这篇文章,了解回收的默认设置。这是29小时,所以除非你为此更改了这个设置,否则会导致其他原因,而不是自动回收。