MSDN Documentation

Microsoft Developer Network

Azure Compute Overview

Understand the core compute services offered by Microsoft Azure to build and deploy scalable applications.

Introduction to Azure Compute

Azure Compute provides a wide range of services for running applications and workloads in the cloud. Whether you need to run virtual machines, containerized applications, or serverless functions, Azure Compute has a solution. This overview explores the primary compute services available to help you select the best option for your specific needs.

Key Takeaways

Azure Compute offers flexibility, scalability, and cost-effectiveness for various application types, from traditional VMs to modern microservices and event-driven architectures.

Virtual Machines (VMs)

Azure Virtual Machines provide on-demand, scalable computing resources. You can create and deploy VMs with different operating systems, sizes, and configurations to match your application requirements. This is ideal for migrating existing on-premises applications to the cloud, running specialized software, or managing workloads that require full control over the operating system.

Key Features:

  • Wide variety of VM sizes and series optimized for different workloads (general purpose, compute-optimized, memory-optimized, storage-optimized, GPU).
  • Support for Windows and Linux operating systems.
  • Managed disks for reliable and high-performance storage.
  • Scalability options including Scale Sets for automatic scaling.
  • Integration with Azure networking and security features.

Learn more about Azure Virtual Machines.

Azure Kubernetes Service (AKS)

Azure Kubernetes Service (AKS) simplifies deploying, managing, and scaling containerized applications using Kubernetes. AKS manages the Kubernetes control plane for you, allowing you to focus on your containers and applications. It's a powerful choice for microservices architectures, modernizing existing applications, and building cloud-native solutions.

Key Features:

  • Managed Kubernetes control plane.
  • Integration with Azure Active Directory for authentication and authorization.
  • Automated cluster management, upgrades, and patching.
  • Support for scaling, load balancing, and service discovery.
  • Integration with Azure Container Registry and other Azure services.

Explore Deploying Applications with AKS.

Azure App Service

Azure App Service is a fully managed platform for building, deploying, and scaling web apps and mobile backends. It supports various languages and frameworks, including .NET, Java, Node.js, Python, and PHP. App Service handles infrastructure management, allowing you to focus on your code.

Key Features:

  • Support for multiple programming languages and frameworks.
  • Continuous deployment from GitHub, Azure DevOps, and other sources.
  • Auto-scaling and load balancing.
  • Integration with Azure Active Directory and social providers for authentication.
  • Custom domains, SSL certificates, and staging environments.

Discover how to Build Web Apps with App Service.

Azure Functions

Azure Functions is an event-driven, serverless compute platform. It allows you to run small pieces of code (functions) without explicitly provisioning or managing infrastructure. Functions are triggered by various events, such as HTTP requests, messages from queues, or timers. This is perfect for building event-driven applications, APIs, and automated tasks.

Key Features:

  • Serverless architecture: pay only for what you use.
  • Supports multiple languages (C#, F#, Java, JavaScript, PowerShell, Python, TypeScript).
  • Triggered by a wide range of Azure services and external events.
  • Scales automatically based on demand.
  • Integrates with other Azure services for seamless data flow.

Get started with Serverless Computing using Azure Functions.

Other Compute Services

Beyond these core services, Azure offers other specialized compute options:

  • Azure Batch: For large-scale parallel and high-performance computing (HPC) workloads.
  • Azure Container Instances (ACI): Run Docker containers without managing VMs or orchestrators.
  • Azure Service Fabric: A distributed systems platform for building microservices and stateful applications.
  • Azure VMware Solution: Run VMware workloads natively on Azure.

Choosing the Right Compute Service

The best Azure compute service for you depends on your specific application architecture, performance requirements, operational overhead tolerance, and cost considerations. Here's a quick guide:

  • Full control and migration: Azure Virtual Machines
  • Container orchestration and microservices: Azure Kubernetes Service (AKS)
  • Web apps, APIs, and mobile backends: Azure App Service
  • Event-driven, scalable, serverless workloads: Azure Functions
  • Simple container deployment: Azure Container Instances (ACI)
  • High-performance computing (HPC): Azure Batch

Always refer to the official Azure documentation for the most up-to-date information and best practices.