c# – 从global.asax vs quartz.net运行计时器
发布时间:2020-12-15 21:35:52 所属栏目:百科 来源:网络整理
导读:我正在开发一个asp.net网站,需要每天访问一些社交媒体网站,以获取一揽子朋友/关注者数据.我选择了arvixe商务舱作为我的主机.在未来,如果我们成长,我会喜欢进入专用服务器并运行 Windows服务,但是由于此时不在卡中,我需要另一种可靠的方式来运行计划任务.我熟
我正在开发一个asp.net网站,需要每天访问一些社交媒体网站,以获取一揽子朋友/关注者数据.我选择了arvixe商务舱作为我的主机.在未来,如果我们成长,我会喜欢进入专用服务器并运行
Windows服务,但是由于此时不在卡中,我需要另一种可靠的方式来运行计划任务.我熟悉从app_code(global.aspx)运行线程计时器.但是,应用程序池回收会导致计时器出现问题.我从来没有像石英那样使用任务调度,但是在stackoverflow上已经阅读了很多关于它的内容.我正在寻找一些关于如何实现目标的建议.我使用这两种方法的一个大问题是,由于api呼叫限制,我将需要爬虫线程定期休眠长达一个小时.我的第一个想法是使用数据库来保存作业的开始和结束.当应用程序池回收时,我会清除任何未完成的部分,并且只启动那天没有运行记录的部分.这里的专家怎么想?这种调度的示例架构的任何良好链接?
解决方法
使用什么方法并不重要,无论是自己动手还是使用Quartz.您受ASP.NET / IIS的支配,因为这是您想要托管它的地方.
您是否有备用计算机可以运行计划任务并将数据上传到托管数据库?说实话,它可能更安全(取决于您的用例),然后尝试在ASP.NET中运行调度程序. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |