question

HugoSilva avatar image
2 Votes"
HugoSilva asked ·

MVC Web Service in Docker Container or Azure App Service?

Hi all, I would like to know what will be on a long run the most cost efficient to deploy an MVC Web Service using Docker Container or Azure App Service.
Having in consideration that the Azure App Service have the auto-scaling as a feature by default on the other hand we will need to use Kubernetes for the automation/orchestration and auto-scaling, Taking out of consideration the man hours spend on each development, i know that the afford to implement Web App will be less man hours that use the Docker Container and Kubernetes, what will be the most cost efficient on Azure in long term?

azure-webapps
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.

1 Answer

piannello avatar image
2 Votes"
piannello answered ·

Did you know that you can run Docker containers on Azure App Services (AAP)? You can also run Docker containers on Azure Container Instances (ACI). And you're obviously aware of Azure Kubernetes Services (AKS), which presents itself as a third option for running Docker containers. So you may have more options than you at first realized...

Your statement about AAP having autoscaling by default is not exactly true. It's available by default, yes, but it's not enabled by default. (And make sure you understand the difference between scaling up and scaling out.) You'd have to set the autoscaling triggers yourself. It's probably easier to setup autoscaling for AAP if you're not familiar with AKS and Kubernetes, though. With AKS, you could setup autoscaling for the cluster to add nodes to the cluster, and with Kubernetes, you could use Horizontal Pod Autoscaler (HPA) to add pods to the nodes. I'm oversimplifying a little, but the idea is that you're setting up autoscaling on two different levels: autoscaling the nodes in the cluster and autoscaling the pods on the nodes.

In your post, you state that "we will need to use Kubernetes". If using Kubernetes is a requirement in any way, then you don't really have a choice--you'll want to use AKS. (But the business analyst in me would also say that the "need" to use Kubernetes is a very poor requirement. The requirement should focus on the business need and not the solution or implementation.)

Last but not least, you should use the Azure Pricing Calculator to compute the differences in cost among these services. There are lots of variables that could influence your costs for each service.

· Share
10 |1000 characters needed characters left characters exceeded

Up to 10 attachments (including images) can be used with a maximum of 3.0 MiB each and 30.0 MiB total.