[英]Dynamically Creating Scheduled Tasks In An ASP.NET Website
我需要一些关于在Web应用程序级别动态创建某种形式的计划任务的最佳方法的建议。 计划任务将从外部API端点提取信息,以定期存储在数据库中,直到特定的结束时间。
通常,我会创建一个Windows服务,为我执行这项工作。 遗憾的是,站点管理员可以创建多个任务来从外部API查询不同的条件。 因此可能有多个任务在运行。
我一直在努力实现在计时器上运行的后台工作线程。 这是最好的方法吗? 或者使用像Hangfire或Quartz.net这样的东西是更好的解决方案,以确保我的后台进程不断运行?
我不知道在Web应用程序中是否可行,以确保在特定持续时间需要时可以不断运行任务。
我尝试使用Hangfire
和Quartz.Net
,在我看来,它们都非常适合调度任务。 Hangfire
有一个很好的界面来管理计划任务,但是当我在IIS
上发布应用程序后遇到一些问题时,我转而使用Quartz.Net
,它与IIS 6.0 / 7.5的Keep Alive Service完美配合。 因此,对于使用Quartz.Net
您可以查看使用Quartz.Net
ASP.NET中的计划任务 。 另一方面,为了使应用程序池回收,IIS /应用程序重新启动等后,您发布的应用程序处于活动状态,只需在发布应用程序的服务器上安装Keep Alive Service for IIS 6.0 / 7.5 。 有关这些问题的详细信息,请查看以下页面中的答案:
希望这可以帮助...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.