注意:如果您熟悉 Azure 定价模型,请直接跳到“问题”部分。
微软将从2010 年 2 月 1 日开始对 Azure 平台的使用收费。每月账单将取决于带宽、存储和其他因素。用于计算账单的因素之一是计算时间。然而,后一个因素有一个误导性的名称:它应该被命名为实例托管时间。引用 windows azure 定价页面:
在开发和测试您的应用程序时,开发人员将希望删除未使用的计算实例以最大限度地减少计算小时计费
因此,您会认为这不是计算时间,而是正常运行时间。在阅读了MSDN 论坛中对此问题的官方回复后,疑问完全消失了:
我可以确认每个实例(任何角色)都很重要,并且您拥有实例活动计数的所有时间(无论它们有多少“活动”)。对于具有两个 Web 角色实例和两个辅助角色实例的应用程序,您需要为四个实例付费
按每个实例 0.12 美元/小时计算,使用 N 个实例的应用的平均计费为 24*30*0.12*N/月 = ~ 每个实例每月 86 美元。当您考虑到如果您希望应用 99.9% 的正常运行时间服务级别协议,您的实例不能少于 2 个这一事实时,小型网站的情况会变得更糟。
因此,小型、计算能力低廉的网站可能不是 Azure 的目标市场。但是对于批处理,负担可能会消失。
问题
仅就计算能力和“计算时间”计费而言,Azure 将是一个很好的托管选项,适用于每月仅运行几个小时的批处理,前提是您可以扩大(和缩小!)数量实例很容易。所以:
- 是否可以通过编程方式扩大和缩小 Azure 中的实例数量?除了手动更改配置文件还有其他选项吗?
- 减少实例数量是否存在任何不明显的问题?
- Azure 需要多长时间来“确认”应用程序的缩减?
关于后一个问题:举一个极端情况,您有大量实例(例如 1000 个)运行 45 分钟。如果 Azure 无法在流程结束后的 15 分钟内注意到缩减,则将再收取 1000 个计算时间小时的费用。