We are running our entire Thinkwise platform in Azure.
To keep cost under control we are looking into doing automated scaling of the App Service and Azure SQL. For the App Service this is a really easy story and has no real downsides due to how scaling is handled by Azure
Our ideal situation would be to scale based on usage, look at the DTU usage in a sliding window and scale up or down based on the observation. However this leads to challenges/problems, during the scaling operation the connection gets dropped and we have found that currently running scheduled jobs by IAM do not always get recognized as ended/abandoned when the connection is lost. In turn this locks that entire schedule leading to missed job executions etc.
Besides IAM not handling it well it also is a challenge/issue for any long running jobs in the application itself.
I am curious how others have done this.