Pricing Options of an Azure App Service Plan

Alberto De Natale
5 min readMay 5, 2019

The choice of the right app service plan affects both the pricing and the way an application is run. As a rule of thumb, more apps running on the same app plan will deliver a lower cost per app as they will increase the resource usage.

Apps do not cost anything, they simply consume resources on the Service Plan.

There are three categories of tiers available: Shared, Dedicated, Isolated. An extra tier is only available for function apps and is called Consumption.

Shared tiers: run on an Azure VM as other Apps Services included in the same app service plan or an App Service Plan of other customers. CPU quotas of the same machine are allocated for each app.

Dedicated tiers: run on a dedicated Azure VM. Apps on the same App Service Plan share the same VM. The higher the tier the more VMs are available to scale out.

Isolated tiers: They run on a dedicated Azure Virtual Network. These provide network isolation on top of the computing isolation.

The tiers available for a .NET Core code based app service are:

  • Shared: Free (F1), Shared (D1, S is used for standard plans)
  • Dedicated: Basic (B1, B2, B3), Standard (S1, S2, S3), Premium (P1v2, P2v2, P3v2, P1, P2, P3)
  • Isolated: I1, I2, I3. Unfortunately, I cannot take pictures of these tiers.

Resources included in all plans

ACU is a measure of the computational resources available. They give an idea of the relative computational performance of a virtual machine setting as the benchmark the A0 VM with a value of 50 ACU. A VM having twice the computational resources of an A0 VM will have 100 ACU.

This is the Size in GB of the VM’s RAM

This is the size in GB of the VM’s storage

Shared Tiers

They quote the allotted computational resources provided. Currently, the F1 plans provide 60 minutes per day.

Additionally, the D1 tier allows the user to buy or import custom domains.

This will enable a new tab into the App Service Settings:

It will allow the purchase of Azure App Service Domains

Basic Tiers

They include all that is included by the Shared Plans plus some extras. They include a dedicated virtual machine, currently, the B1 plan includes an “A-Series compute equivalent” worth a total of 100 ACU.

SSL Settings

When buying a free ties application, it will come with a Microsoft wildcard certificate:

Trying to change the certificate won’t be possible:

When using a basic or upper plan instead this feature will be enabled.

Server Name Indication (SNI)

Long story short, allows a server to map different SSL certificates with different domains. Virtual hosting allows for hosting multiple domain names on a single server. This is often done by setting the domain name inside the HTTP host header.

However, a server will only be able to read the HTTP host header after a successful SSL handshaking, hence the server will not know which certificate to serve until the SSL handshaking has not successfully complete

SNI fixes this problem by allowing the client to send the name of a virtual domain.

Manual Scale

It allows increasing the number of VM instances that run an app.

Standard Tiers

Besides increasing the maximum number of scale-out VMs to 10, standard plans include the following additions:

Staging slots

Daily Backups

Auto Scale

Autoscale will allow to automatically increase the number of virtual machines available according to some definable rules.

Traffic Manager

Traffic manager allows optimizing traffic between apps deployed in different regions. For apps deployed within the same region, Azure already provides round-robin and fail-over functionalities.

Premium and Isolated Tiers

Premium tiers build on top of the previous feature increasing their number and quality.

They P1/2/3 tiers provide A-Series virtual machines. P1/2/3V2 tiers provide Dv2-Series virtual machines. They ACU are higher.

Isolated tiers will require the creation of an App Service Environment and more focus on them will be given on another post.

Conclusions

Different options are available when choosing an App Service Plan and knowing what they are is important in order to make the most out of one’s investment.

--

--

Alberto De Natale

Alberto De Natale is a passionate tech-enthusiast software developer.