Wednesday, June 26, 2013

Windows Azure Autoscaling (Preview)

I was working on a production deployment for a client, and found something that (almost) made me forget what I was doing. If you have logged into the Windows Azure portal lately (like, today), you might notice the green PREVIEW badge next to the Scale menu option:

Scale_1

Yes, autoscaling is now an option configurable from the Azure management portal. You no longer need external tools like the Enterprise Library autoscaling application block, which I had been meaning to look into…

Obviously, you can leave autoscaling off, or configure it by CPU or queue, and configure options for each.

Scale by CPU

Scale_2

To scale by CPU, you primarily focus on the target CPU load (indicated in this image by 60-80%). At that range, the autoscaling process would scale the instance up by the specified number until load % is reduced, and continue to do so if needed after the specified wait time.

A real-world scenario where this is useful is a web role handling peak traffic.

Scale by Queue

Scale_3

To scale by queue, the autoscaling process monitors the number of messages in an indicated queue, and can scale up and down based on that number.

The real-world scenario here is a worker role that is responsible for handling messages in a queue. Think ecommerce order fulfillment or a content indexer.

Bottom Line

The bottom line? This is awesome, and Microsoft continues to give developers and companies reasons to build on Windows Azure.

No comments:

Post a Comment