Microservices on Azure
Build resilient, highly scalable, and distributed applications to deliver value faster.
What are microservices?
Microservices are an architectural approach to building applications where each core function, or service, is built and deployed independently. Microservice architecture is distributed and loosely coupled, so one component’s failure won’t break the whole app. Independent components work together and communicate with well-defined API contracts. Build microservice applications to meet rapidly changing business needs and bring new functionalities to market faster.
Easily manage new feature releases, updates, and bug fixes in individual components without redeploying the entire application. Automate software delivery workflow with a continuous integration/continuous deployment (CI/CD) pipeline like GitHub Actions.
Scale individual services and subsystems based on resource needs without scaling out the entire application. Pack a higher density of services into a single host using a container orchestrator like Azure Kubernetes Service (AKS) or Azure Red Hat OpenShift.
Replace or retire individual services without affecting the entire application. Unlike the traditional monolithic application model, microservices platforms use patterns such as circuit breaking to tolerate individual service failure, improving security and reliability. To make this easier, install a service mesh using the Service Mesh Interface (SMI) for Azure Kubernetes Service (AKS) or Red Hat OpenShift Service Mesh for Azure Red Hat OpenShift.
Choose your team's preferred deployment approach, language, microservices platform, and programming model for each service. Publish your microservice APIs for internal and external consumption while managing crosscutting concerns such as authentication, authorization, throttling, caching, transformation, and monitoring with Azure API Management.
Explore microservice solution architectures
Building microservices on Azure
Learn what microservices are, including benefits and challenges.
Using domain analysis to model microservices
Get a set of well-designed microservices using the domain-driven design (DDD) framework.
Identifying microservice boundaries
Start from a carefully designed domain model to reason about the right size of a microservice.
Design patterns for microservices
Explore design patterns that help mitigate some of the challenges that arise with microservices.
Building a CI/CD pipeline for microservices
Create a good CI/CD process to achieve faster and more reliable release cycles.
Azure Kubernetes Service (AKS) solution journey
Learn about AKS, align your organization around roles and responsibilities, and deploy production-ready workloads.
Learn more about products and services for microservices architecture
Azure Kubernetes Service (AKS)
Highly available, secure, and fully managed Kubernetes service.
Azure Red Hat OpenShift
Fully managed Red Hat OpenShift service, jointly operated with Red Hat.
Azure Functions
An event-driven serverless compute platform that also solves complex orchestration problems.
Azure Container Apps
Build and deploy modern apps using serverless containers.
Azure Cosmos DB
Fast NoSQL database with open APIs for any scale.
Azure Container Registry
A registry of Docker and Open Container Initiative (OCI) images and artifacts.
Azure API Management
Hybrid, multicloud management platform for APIs across all environments.
Read Designing Distributed Systems
Learn about repeatable patterns and components to develop reliable distributed systems easier and more efficiently.
Get guidance on your cloud-native journey
Explore Kubernetes learning and training resources—including videos, articles, books, and technical webinars.