Azure Cloud Services - Hands On
99X PVT LTD.
App Service enables..
you to build and host web apps, mobile back ends,
and RESTful APIs in the programming language of
your choice without managing infrastructure. It
offers auto-scaling and high availability, supports
both Windows and Linux, and enables automated
deployments from GitHub, Azure DevOps, or any Git
● User makes a request to create a new site.
● ARM makes sure user has access to the
resource to allow the given operation (create
in this case) and forwards the requests to App
● Geo-Master finds the best suitable scale unit
for the user’s request and forwards the
● The scale unit creates the new application.
● Geo-Master reports success on the create
Global Distribution of App Service
Why use App Service?
● Multiple languages and frameworks - App Service has first-class support for
ASP.NET, ASP.NET Core, Java, Ruby, Node.js, PHP, or Python. You can also run
PowerShell and other scripts or executables as background services.
● Managed production environment - App Service automatically patches and
maintains the OS and language frameworks for you. Spend time writing great
apps and let Azure worry about the platform.
● Containerization and Docker - Dockerize your app and host a custom
Windows or Linux container in App Service. Run multi-container apps with
Docker Compose. Migrate your Docker skills directly to App Service.
● DevOps optimization - Set up continuous integration and deployment with
Azure DevOps, GitHub, BitBucket, Docker Hub, or Azure Container Registry.
Promote updates through test and staging environments. Manage your apps
in App Service by using Azure PowerShell or the cross-platform command-
line interface (CLI).
● Global scale with high availability - Scale up or out manually or automatically.
Host your apps anywhere in Microsoft's global datacenter infrastructure, and
the App Service SLA promises high availability.
Azure App Service logical components
● App Service on Linux is not supported on Shared pricing tier.
● You can't mix Windows and Linux apps in the same App Service plan.
● Within the same resource group, you can't mix Windows and Linux apps in
the same region.
● The Azure portal shows only features that currently work for Linux apps. As
features are enabled, they're activated on the portal.
● When deployed to built-in images, your code and content are allocated a
storage volume for web content, backed by Azure Storage. The disk latency of
this volume is higher and more variable than the latency of the container
filesystem. Apps that require heavy read-only access to content files may
benefit from the custom container option, which places files in the container
filesystem instead of on the content volume.
App Service plans are organized in three increasingly
powerful (and expensive) tiers:
● Dev/Test: F- and B-series VMs with minimal compute and no extra
features. This compute level is the least expensive but offers few features
and shouldn’t be used for production apps.
● Production: S- and P-series VMs with a good balance of compute power
and features. This tier should be your App Service starting point.
● Isolated: Called the App Service Environment and very expensive;
Microsoft allocates hardware so that your web app is screened from the
Just because you can associate more than one web app
into a single App Service plan doesn’t mean that you
should. Sure, you can save money (the App Service plan
incurs run-time costs based on instance size), but the
more apps you pack into a single plan, the greater the
burden on the underlying VM.
Inside the Azure App Service Architecture
App Service overview