MVC Web Service in Docker Container or Azure App Service?

Hugo Silva 36 Reputation points
2019-11-05T12:18:47.06+00:00

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 App Service
Azure App Service
Azure App Service is a service used to create and deploy scalable, mission-critical web apps.
6,688 questions
0 comments No comments
{count} votes

Accepted answer
  1. Paul Iannello 91 Reputation points
    2019-11-05T20:32:41.707+00:00

    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.

    3 people found this answer helpful.
    0 comments No comments

0 additional answers

Sort by: Most helpful