Start with the workload shape
Compute is the hosting model for the resources that run an application. AZ-900 questions usually provide a clue about the workload and the management boundary. Identify the clue before choosing the service.
Operating-system control
Use Azure Virtual Machines when the application requires a custom guest OS, traditional server administration or unsupported platform dependencies.
Managed web hosting
Use Azure App Service for web applications and APIs when the team wants to focus on code rather than managing servers.
Event-driven execution
Use Azure Functions for small units of code triggered by events, especially when serverless execution and automatic scaling fit the workload.
AZ-900 decision rule
Manage the OS: Virtual Machines. Host a managed web app or API: App Service. Run event-triggered code: Functions. Package and run containers: select a container host from orchestration and control requirements.
Compare the primary compute choices
Service capabilities and plans evolve. Use these as decision categories, then confirm current supported features, region availability, scaling, networking and pricing for the chosen service.
A container is packaging; Azure still supplies the host
Containers package application code and dependencies into portable units. They do not determine the final operational model. Azure provides several ways to host them:
- App Service: suited to containerized web applications and APIs when simple managed web hosting is the goal.
- Container Apps: suited to managed cloud-native applications, APIs, background processors and microservices without direct Kubernetes API access.
- Container Instances: suited to straightforward container execution where a complete orchestration platform is unnecessary.
- AKS: suited to teams requiring Kubernetes APIs, orchestration controls and ecosystem compatibility.
The simplest service that satisfies the workload often reduces operational overhead. Choose AKS because Kubernetes capabilities are required—not merely because the application uses a container image.
Worked scenario: modern retail order platform
A retailer has a public web storefront, an event-driven order processor, a vendor service that requires Windows administrator access and several containerized background workers.
- Host the storefront and REST API on Azure App Service when managed web hosting supports the application.
- Use Azure Functions for short event-driven order notifications triggered by queue messages.
- Run the vendor component on an Azure virtual machine because it requires guest-OS control and administrator access.
- Use Azure Container Apps for independently scalable containerized workers when the team wants managed orchestration without Kubernetes API access.
- Consider AKS only if the team requires Kubernetes-specific control, APIs or ecosystem capabilities and can operate the added complexity.
- Design identity, networking, data protection, monitoring, availability and recovery for every selected service; managed compute does not remove workload responsibility.
A strong architecture can combine services. AZ-900 tests whether you can match each workload component to the appropriate level of control and management.
Common AZ-900 mistakes
- Choosing a virtual machine for every workload because it resembles an on-premises server.
- Choosing Functions for a continuously running traditional application merely because it is serverless.
- Assuming App Service provides guest-operating-system administrator access.
- Assuming a container is itself an Azure hosting service.
- Choosing AKS for a simple container without a Kubernetes requirement.
- Ignoring whether the workload is web-oriented, event-driven, scheduled, stateful or dependent on OS customization.
- Assuming automatic scaling is exclusive to one service category.
- Ignoring operational skills, networking, reliability, security and cost when comparing valid services.
AZ-900 practice checks with explanations
A company must install a custom driver and patch its own Windows operating system. Which service?
Best answer: Azure Virtual Machines. The guest-OS control required by the workload points to IaaS.
A team needs managed hosting for a public REST API and does not want to operate web-server VMs. Which service?
Best answer: Azure App Service. It is optimized for managed web applications and APIs.
Code should run when a queue message arrives and scale with event volume. Which service is the clearest match?
Best answer: Azure Functions, an event-driven functions-as-a-service offering.
A team has containerized microservices but does not need Kubernetes APIs. Which managed option should it evaluate?
Best answer: Azure Container Apps. It provides managed container hosting while abstracting direct Kubernetes cluster management.
Frequently asked questions
When should I choose an Azure virtual machine?
Choose a virtual machine when the workload requires guest-operating-system control, custom software, a traditional server model or compatibility that a managed platform does not provide. The customer also accepts operating-system and application management responsibilities.
What is Azure App Service best suited for?
Azure App Service is managed hosting optimized for web applications, mobile back ends and REST APIs. Teams can deploy code or supported containers while Microsoft manages the underlying infrastructure and operating systems.
How is Azure Functions different from App Service?
Azure Functions uses a functions-as-a-service model optimized for event-driven units of code triggered by events such as messages, timers or HTTP requests. App Service is broader managed hosting for web applications and APIs.
What is the difference between Container Apps and AKS?
Azure Container Apps provides managed, serverless-style container hosting without direct access to the Kubernetes API. Azure Kubernetes Service provides direct Kubernetes API and control-plane access for teams that need Kubernetes orchestration capabilities and can manage the added complexity.
Does a container replace the need to select a compute service?
No. A container packages an application and its dependencies, but it still needs a host. Azure options include App Service, Container Apps, Container Instances and AKS, each with different orchestration, scaling, networking and management trade-offs.
Official Microsoft references
- Current AZ-900 study guide
- Describe Azure compute services
- Choose an Azure compute service
- Compare Azure container options
Confirm current service capabilities and plan limits before making production decisions. ITCertPath uses original learning scenarios and does not reproduce confidential Microsoft exam questions.