Windows Azure和动态弹性
-
03-10-2019 - |
题
Windows Azure有没有办法动态弹性?如果我的工人开始超负荷,或者队列开始变得过于饱满,或者太多的工人没有工作要做,是否有一种方法可以通过代码动态添加或删除工人,或者只是手动完成(需要人为干预)现在?有人知道是否有任何计划,如果目前尚不可用?
解决方案
有一个服务管理API,您可以使用它来扩展应用程序(从Windows Azure中运行的代码或Windows Azure之外运行的代码)。
http://msdn.microsoft.com/en-us/library/ee460799.aspx 和 http://code.msdn.microsoft.com/release/projectRelealeases.aspx?projectName = windowsazuresamples&releaseid = 3233.
其他提示
微软 发货 这 自动申请块 (芥末)提供动态缩放。一些支持的场景:
- 通过动态更改实例计数或执行应用程序节流,可以自动在Windows Azure中自动化Web和Worker角色。
- 根据时间表自动自动化Windows Azure角色。
- 根据从应用程序和/或Windows Azure收集的指标自动化Windows Azure角色,但在每个角色的实例计数上受到上和下限的约束。
- 防止稳定器的角色实例数量快速振荡。稳定器还可以通过将扩展操作扩展到小时开始,并将操作缩小到小时结束,从而有助于优化成本。
- 监视和记录自动化活动。
- 发送通知以预览任何扩展操作,然后再进行。
- 在Windows Azure Blob存储或本地文件存储中加密规则和其他配置。
- 通过使用Windows PowerShell来管理自动计算机配置。
综合样本应用程序(Tailspin调查)展示所有这些功能都提供了(安装说明可用 这里)。另外,查看 开发人员指南 和频道9 视频演练.
以下是几个演讲/演示,显示了芥末的行动:
- 创建一个名称的队列
autoscale.[your_role_name].instance_count
- 在管理门户网站中,将AutoScale设置为
Queue
. - 将目标计数字段设置为
1
.
现在,您可以在该队列上使用标准的临界和Dequeue操作来控制工人角色实例的数量。您已经有7天的时间来处理消息到期,因此您可能需要创建一个工人角色,以确保队列中的消息数正在跟踪您的目标实例计数。
如果您正在采用动态弹性,那么您可能已经牢记了基于工具的控制器,因此这可能不是问题。
lokad.cloud Windows Azure的开源项目包含分布式执行器框架。它提供的 具有VM Provisioning功能的自动缩放功能.
不隶属于 StackOverflow