首页 文章

Azure - 计划的长时间运行任务 - 将工作者角色缩减为零

提问于
浏览
0

Ok Azure专家,

  • 我的任务只需要每周运行一次 - 这是一项长期运行的任务,可能需要2-3天才能运行 .

  • 我已经设置了一个基于队列扩展的辅助角色 . 在我们希望任务开始的那一天 - 我们填充队列(使用Web作业) .

  • 在剩下的时间里,当队列为空时,我希望工作者角色关闭 - 但我无法缩小到0个实例 .

  • 最初,我们想用Web作业做这件事,但网站不时关闭 - 突然关闭我的webjob - 这应该发生吗?即使 Keep-Alive 已开启?此外,您无法阻止已触发的Web作业运行 - 因此,如果我们希望该流程停止 - 我们需要关闭该网站 - 这并不理想 .

How do I scale my instances down to zero?

*也欢迎替代解决方案 .

试图在这里尽量降低成本 - 为什么要支付一个没有做任何事情的 Worker 角色?

1 回答

  • 0

    此时无法将Worker角色缩减为0个实例 . 即使您停止工作者角色,您仍然会对STOPPED实例收取费用 .

    但是,虚拟机可以实现您正在寻找的行为 . 如果您关闭(STOP和DEALLOCATE)虚拟机,则不需要为该计算机支付费用 .

    现在,唯一的挑战是根据队列计数停止/启动VM . 我没有't recall if Azure portal'的原生扩展支持缩小到VM的0个实例 . 但是,如果您使用AzureWatch,您应该可以毫无问题地完成此操作 . 免责声明:我与AzureWatch有联系 .

    HTH

相关问题