Application hosting: Web apps, containers, VMs

Azure compute and networking services

📘Microsoft Certified: Azure Fundamentals (AZ-900)


Application Hosting in Azure

In Azure, application hosting means running your software or services so users can access them over the internet or a network. Azure provides multiple ways to host applications, and the main ones are:

  1. Web Apps (Platform as a Service, PaaS)
  2. Containers (Lightweight, portable apps)
  3. Virtual Machines (Infrastructure as a Service, IaaS)

Each option has its own features, use cases, and management responsibilities.


1. Azure Web Apps

  • Type: PaaS (Platform as a Service)
  • Purpose: To run websites or web applications without managing the underlying infrastructure like servers or operating systems.
  • Key Features for AZ-900 Exam:
    • Fully managed by Azure.
    • Supports multiple programming languages (e.g., .NET, Java, Python, PHP, Node.js).
    • Auto-scaling: Azure can automatically increase or decrease resources depending on demand.
    • Built-in high availability and security.
    • Deployment options: directly from GitHub, Azure DevOps, or local code.

Who manages what:

  • Azure: handles the server, OS, and infrastructure.
  • You: manage your application code and configuration.

Use in IT environments:

  • Hosting a corporate internal portal.
  • Running a SaaS web application.
  • Hosting APIs that mobile or web apps consume.

2. Containers

  • Type: Can run as PaaS or part of IaaS.
  • Purpose: Containers are lightweight packages that include your application and everything it needs to run. This makes them portable and consistent across environments.

Key Features for AZ-900 Exam:

  • Can run in Azure using Azure Kubernetes Service (AKS), Azure Container Instances (ACI), or on VMs.
  • Containers isolate applications so multiple containers can run on the same host without conflicts.
  • Faster to start and more efficient than full virtual machines.
  • Supports DevOps and CI/CD pipelines for continuous deployment.

Who manages what:

  • Azure manages the container service (if using AKS or ACI).
  • You manage the containerized application and its configurations.

Use in IT environments:

  • Running microservices (small, independent components of an application).
  • Quickly deploying updates without affecting other apps.
  • Testing new software in isolated environments before production.

3. Virtual Machines (VMs)

  • Type: IaaS (Infrastructure as a Service)
  • Purpose: Virtual machines are full servers running in the cloud. You control almost everything, just like having a physical server in a data center.

Key Features for AZ-900 Exam:

  • Choose OS: Windows or Linux.
  • Full control over software installation and configuration.
  • Flexible sizes: from small testing machines to large production servers.
  • Can be connected to networks, storage, and other Azure resources.
  • Can be used for legacy applications that need full server control.

Who manages what:

  • You manage the operating system, applications, updates, and security.
  • Azure manages the physical server, storage, networking, and virtualization layer.

Use in IT environments:

  • Running custom enterprise applications.
  • Hosting databases.
  • Running background services or batch processing jobs.

Comparing Web Apps, Containers, and VMs

FeatureWeb Apps (PaaS)ContainersVMs (IaaS)
ManagementAzure manages mostShared: Azure + YouYou manage most
Ease of UseHighMediumLow
ScalingAuto-scalingManual or autoManual
PortabilityLimitedHighLow
Best ForWeb applicationsMicroservices, DevOpsLegacy apps, full server control
CostPay for app usagePay per containerPay per VM size

Exam Tip: You should be able to identify the correct hosting option based on the scenario.

  • If you need minimal management, choose Web Apps.
  • If you want portable apps or microservices, choose Containers.
  • If you need full control of the OS or legacy software, choose VMs.

Key Azure Services for Application Hosting

  1. Azure App Service → Web Apps (PaaS)
  2. Azure Container Instances (ACI) → Run containers quickly without managing VMs
  3. Azure Kubernetes Service (AKS) → Orchestrate and manage multiple containers at scale
  4. Azure Virtual Machines → Full control over infrastructure

Exam Pointers for AZ-900

  • PaaS vs IaaS: Know the difference in management responsibility.
  • Web Apps vs Containers: Web Apps are simpler; Containers are portable and flexible.
  • VMs: Give maximum control but require more management.
  • Remember Azure manages infrastructure for PaaS and partially for containers, but you manage it all in VMs.
  • Understand use cases; exam questions often describe a scenario and ask which hosting model is best.
Buy Me a Coffee