【问题标题】:Does Azure Worker Roles get charged $$ when they are Sleeping?Azure Worker Roles 在睡眠时是否会收取 $$?
【发布时间】:2013-04-17 02:57:12
【问题描述】:

我正试图弄清楚如何(粗略地)计算我正在考虑创建的一些工人角色的一些预期成本。

TLDR;

如果您的工人是 Sleep(someTime)/睡觉,Azure 会向您收取 $$ 吗?


详情

Azure Pricing Page 说明了他们的定价、每小时和每个 VM 大小。

所以为了让我的问题保持简单,让我们假设我想要 3 个工人,每个工人都在一个小型 (A1) 实例上。

现在 - 关键是这 => 时间!

让我们也假装,这正是每个工人所做的。

Worker 1 : Do-Some-Work-That-Takes-1-Second-Exactly. Sleep(59000);

Worker 2: Do-Some-Work-That-Takes-5-Seconds-Exactly. Sleep(550000);

Worker 3: Do-Some-Work-That-Takes-10-Seconds-Exactly. Sleep(50000);

因此,worker 1 工作 1 秒,然后休眠 59 秒。工人 2:5 秒 + 55 秒睡眠。工人 3:10 秒 + 50 秒睡眠。

这个想法,工人们每分钟都会“开始”,做他们的工作。

** 是的,我知道实时工作是可变的 .. 但让我们保持简单 **

那么,对于每位员工,他们是按每分钟(工作 + 睡眠)收费还是仅按工作时间收费?

例如。 1 秒 + 5 秒 + 10 秒 = 每分钟 16 秒。 = 16 * 60 = 960 秒/小时

如果一小时内有 3600 秒 .. 这意味着在我被收取 1 小时“工作”费用之前,还不到 4 小时或现实生活时间?

【问题讨论】:

    标签: azure azure-worker-roles


    【解决方案1】:

    工作人员和 Web 角色按部署小时计费,因此即使什么都不做,也会因为您实际委托虚拟机启动而被计费。

    即使角色已停止但部署尚未删除,您仍需为实例付费。

    另外请注意,它是按整小时收费的,因此如果您在 10 分钟后部署并关闭,您仍然需要为整小时付费。或者,如果您在上午 11:55 部署并在下午 12:15 删除,您将支付 2 小时的费用。

    来自http://www.windowsazure.com/en-us/pricing/details/cloud-services/#

    如果我部署的实例处于“停止”状态,我是否仍需要付费?

    是的,已停止的实例仍会占用为该实例供电的计算资源,因此您仍需付费。要停止计费,您需要删除您的部署。

    如果我的 Web 或 Worker 角色部署不到一小时,我需要支付多少费用?

    云服务根据您的服务部署的时钟小时数计费。如果部署在一个时钟小时内超过五分钟,则任何部分时钟小时都将按整小时计费。如果您的服务部署时间不到一小时,您可能需要支付零、一或两小时的费用,具体取决于部署发生的时间。例如,如果您在上午 10:50 部署一个小型云服务实例并在上午 11:10 删除它,您将需要支付两个小时的费用,其中一个小时用于上午 10:50 至上午 11:00 的使用,另一个小时用于在上午 11:00 和上午 11:10 期间使用。

    【讨论】:

    • 哎哟 - 这不好 :( 我希望 Azure Workers 可能有点像 IronMQ,每个角色都被“解雇”然后尽快关闭,从而减少“工作 $$ 时间”到最低限度。
    • 为什么这样不好?您按小时租用整个虚拟机,专用于您,不与其他任何人共享。这就是工人角色:虚拟机。在您的示例中,您可以在单个实例中运行所有定时任务,从而节省大量资金。
    • 我希望将任务分成单独的工作单元/服务......并且只在需要时运行它们。这就是 IronMQ 所做的。运行进程。结束。您只需为在那段短暂时间内使用的 CPU 付费。我希望在 Azure 上做同样的事情(这样我们就可以轻松地利用其他一些 azure 服务)。
    • @DavidMakogon 在谈论虚拟机时,“专用”并不意味着太多。大多数虚拟机管理程序允许您过度配置硬件以提高其利用率。如果您发现特定单元上的虚拟机组合足够活跃,可以最大限度地利用利用率,那么您可以动态地将虚拟机实时迁移到另一个过度配置较少的单元。实际上,如果它们很少处于活动状态,更多的虚拟机可以共享相同的硬件单元,因此运行这些虚拟机的成本更低。
    • 在 EC2 中,停止的实例不会产生任何费用。
    【解决方案2】:

    我知道这是一个老问题,但我正在做一些 Azure 定价研究,并且接受的答案有一部分不再正确。

    如果我的 Web 或 Worker 角色的部署时间不到一小时,我需要支付多少费用?”这个问题,答案提到:

    如果部署在一个时钟小时内超过五分钟,则任何部分时钟小时都将按整小时计费。

    current pricing page 有一个常见问题解答指出这是不正确

    如果我的网络或辅助角色部署不到一小时,我需要支付多少费用?

    答案是:

    云服务根据您的服务部署的持续时间计费。如果您的实例部署时间不到一个小时,或者几个小时加上几分之一小时,您将只为该持续时间付费。 Azure 不会将部分小时数取整为完整小时数,您只需为云服务实例处于“运行”状态的持续时间付费。

    【讨论】:

      【解决方案3】:

      只要您在 Windows azure 中进行部署,您就需要付费。不管是运行状态还是停止状态。如果您关闭角色,那么您也会产生费用。

      【讨论】:

        猜你喜欢
        • 2011-05-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-09-15
        • 2010-10-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多