计时器,应用程序池超时

时间:2011-03-22 18:01:00

标签: c# asp.net

我的网络应用程序中运行了计时器。每次应用程序启动时,都会创建计时器。问题是应用程序池在空闲时段结束后也会结束计时器。下一个请求会导致应用程序池重新启动并创建一个新的计时器。

有没有让计时器重置?

1 个答案:

答案 0 :(得分:0)

这是我经常看到的一个问题。简短的回答是否定的,答案很长,即使您定期轮询网站,它最终也会回收应用程序池。

如果需要像这样进行后台工作并将其嵌入到ASP.NET中,则必须创建一个健壮的工作队列,如果发生中断或崩溃,它不会中断,因为它会发生。对于长时间运行的流程而言,这只是一个好的设计。这可能看起来很多工作,但简单的设计可能会让你走得很远。

建议的方法是将该代码拉入单独的Win32服务,因为此类工作负载的性质不适合基于REST的体系结构。

如果你需要的只是定期检查,那么只需要一个外部脚本轮询网站就可以了,但这是处理计时器的粗略方式。