是否可以以编程方式生成辅助角色的新实例? 我有一个工作者角色,它依赖于一些服务总线队列,它抓取消息并将数据放入表存储,SQL数据库并发送通知。我需要能够根据SB队列大小添加更多实例,因为它们将来可以逐渐接收更多的消息。我可以从我的代码中控制它吗?在那种情况下如何?
答案 0 :(得分:9)
有多种方法可以实现此功能:
1)Windows Azure支持根据Service Bus队列中的消息数量进行自动扩展。您可以简单地将扩展配置为在Azure管理门户内部工作。它在测试版中目前是免费的,并且在它上线时尚未公布价格。
2)Microsoft的模式和实践组中有一个名为WASABi的开源API。您需要一个托管位置,但它将代表您与Azure Service Management API进行通信,并为您提供基于Service Bus队列实现自己的自动扩展的框架。使用它,您将主要使用一些配置XML文件
3)如果你不介意使用第三方产品&服务,有一个名为AzureWatch的服务(我隶属于它),它将为您提供一种基于服务总线队列进行扩展的方法,就像Azure门户一样,但它会有一堆其他选择,功能和服务。
4)您可以直接使用Service Management API来更改实例计数,但我真的不建议直接使用它,例如WASABi就在其中。
我最近写了一篇关于自动缩放选择的博客http://blog.paraleap.com/post/2013/07/29/Windows-Azure-Auto-scaling-Options-Side-by-Side-Comparison