Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Can Windows Azure dynamically scale the application as load changes?

From what I see in Windows Azure materials on how to deploy applications (for example, this lab), one has to select the "role size" and number of role instances when deploying his application.

That looks uncool - what happens if there's a sudden increase in number of requests to the application?

Is it possible to deploy an application in such way that additional role instances are spawned in case of high load and then killed when load gets lower?

like image 281
sharptooth Avatar asked May 13 '11 13:05

sharptooth


2 Answers

Auto-scaling is not a built-in service today, but there are 3rd-party tools that offer this service, such as Paraleap's AzureWatch. You can roll your own as well (and here's a starter sample), but I wouldn't recommend it when starting out, as there are many things to think about, such as:

  • Understanding how Windows Azure billing works, and when the hourly meter turns over
  • Understanding ramp-up time and when to consider scaling back down without causing up/down server bouncing

Also, to do your own scaling, you'd need to place that code either on-premises or in one of your roles (preferbly its own "manager" role). If in a role, you have to make sure that the management code only runs in one instance (using some type of blob-lock semaphore or something similar) - otherwise you'll have the risk of double-scaling.

I'd take a serious look at AzureWatch to get started: It's a penny per instance per hour, and you'll be up and running very quickly.

like image 51
David Makogon Avatar answered Sep 30 '22 13:09

David Makogon


This functionality isn't baked in to Azure - but Microsoft may add something in the future.

There are quite a few samples out there that show you how to implement this yourself - e.g. see http://blogs.msdn.com/b/publicsector/archive/2011/02/18/dynamically-scale-your-windows-azure-service-instances.aspx


As an update to this - Scott Gu was talking in London this week (June 2011) and he suggested that autoscaling was something that Microsoft were actively working on and would be supplying in the near future. Obviously there's no date at present - and no guarantees!

like image 29
Stuart Avatar answered Sep 30 '22 12:09

Stuart