繁体   English   中英

应用程序池回收对辅助进程和WebEventProvider的影响

[英]Effects of Application pool recycling on worker process and WebEventProvider

我的项目中有一个WebEventProvider,可以以固定的时间间隔进行一些后台处理。 如我所见,它在应用程序池回收时停止,并且不会自动重新启动。 根据日志,Application_End事件被调用多次,但Application_Start事件未被调用。 这是否意味着应用程序池回收后应用程序不会自动重新启动? 回收工作进程是否与WebEventProvider有关?

如果要在服务器上运行清除和其他定时事件,则确实需要使用其他机制。 IIS根本不打算这样做。

您应该考虑使用控制台应用程序或类似应用程序将所有这些事件移至预定任务。

但是,如果您绝对需要在正在运行的IIS进程中运行这些文件,则可以设置一个计划任务来运行tinyget.exe(这是IIS资源工具包的一部分) ,以每隔一定间隔请求一个页面。 这将确保您的IIS进程在您需要执行其他任务之前能够正确运行。

ASP.NET运行状况监视配置是ASP.NET设置架构的一部分-指示它必须由ASP.NET运行时提供。 现在,应用程序池确实是由IIS启动的工作进程,并且回收应用程序池不会启动ASP.NET应用程序。 除非触发ASP.NET应用程序,否则ASP.NET运行时将不会出现。

我认为您需要考虑自动启动ASP.NET应用程序 -不幸的是,它只有IIS 7.5功能。 另一种方法是设置调度程序以定期ping您的应用程序(发送虚拟请求)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM