Azure 任务计划程序

标签 azure cloud scheduling task

虽然这个问题是 Azure 特有的,但我确信这是云计算的常见情况。

我有一个需要在特定时间运行的任务列表。通过窗口服务器,我可以使用任务计划程序并安排我的程序在特定时间运行。我可以更进一步,创建一个 Windows 服务,该服务将按照给定的时间间隔运行,然后执行适当的任务。

有人对云计算环境的最佳方法有建议吗?

我可以创建一个辅助角色,每秒轮询任务列表,然后将适当的任务放入队列中,由另一个辅助角色处理。

我可以创建一个每天运行一次的辅助角色,获取所有任务并将它们提交到队列中。然后,处理器角色将从队列中拉出一个项目并在适当的时间进行处理。

还有其他建议吗?

最佳答案

您可以设置服务总线队列并将其用作调度程序。

通过设置 ScheduledEnqueueTimeUtc 将消息发送到队列中将消息发送到所需的时间,届时该消息将显示在队列中。在执行工作人员/网络角色中,您在该队列上设置一个接收器,一旦消息显示,即作业到期,它将立即获取作业。

这样做的好处是,您可以使用它来平衡多个实例之间的作业,并且由于计时器完全位于您的应用程序外部,因此您无需存储、恢复和管理它。 SB 会为您做这一切。

需要注意的是:SB 无法取消预定的消息。

关于Azure 任务计划程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/571439/

相关文章:

android - 如何在几秒钟不活动后关闭对话框?

java - DropWizard 本身是否支持计划任务?

azure - Azure 应用服务部署槽的用例 - 应用版本的变化

azure - 事件中心触发在带有 KEDA 的 AKS 上运行的 Azure Function 无法横向扩展

deployment - 从 Eclipse 构建 Azure 部署包失败

mysql - Google Cloud SQL 连接问题 (C#)

c++ - 使用 C++11 线程确保每个线程都有机会在给定时间段内执行

asp.net-mvc - 在部署之前在本地开发 Azure 应用程序

python - python 文件中的 SQL 查询显示为 "COLUMNS"而不是 "VALUES"

python-3.x - 谷歌云 : Choosing the right storage option