Design Compute Infrastructure
This domain covers choosing and designing compute platforms: virtual machines, containers, and serverless, plus how applications are deployed and messaged. Match the workload to the right compute abstraction.
Choosing a compute platform
Select virtual machines and Virtual Machine Scale Sets for full OS control and lift-and-shift, Azure App Service for managed web apps, containers on Azure Kubernetes Service for orchestrated microservices, and Azure Container Apps or Functions for serverless event-driven work. Base the choice on control, scalability, operational overhead, and cost.
Containers and orchestration
AKS orchestrates containerized workloads at scale with autoscaling, rolling updates, and integration with Azure networking and identity. Azure Container Registry stores images. For simpler serverless containers, Azure Container Apps abstracts the cluster while still supporting scaling to zero and microservices patterns.
Application and messaging architecture
Design loosely coupled systems using Azure Service Bus for enterprise messaging with ordering and transactions, Azure Event Grid for reactive event routing, and Event Hubs for high-throughput streaming. Decoupling components with queues and events improves scalability and resilience.
Deployment and infrastructure as code
Design repeatable deployments with ARM templates or Bicep and pipelines in Azure DevOps or GitHub Actions. Use deployment slots in App Service for zero-downtime releases and blue/green or canary strategies to limit risk. Infrastructure as code makes environments consistent and auditable.