Azure Reference Architectures
Our reference architectures are arranged by scenario. Each architecture includes recommended practices, along with considerations for scalability, availability, manageability, and security. Most also include a deployable solution or reference implementation.
AI and machine learning
Distributed training of deep learning models
Run distributed training of deep learning models across clusters of GPU-enabled VMs.
Training of Python scikit-learn models
Recommended practices for tuning the hyperparameters of a scikit-learn Python model.
Batch scoring for deep learning models
Automate running batch jobs that apply neural style transfer to a video.
Batch scoring of Python models
Batch score many Python models in parallel on a schedule using Azure Machine Learning.
Batch scoring of Spark models on Azure Databricks
Build a scalable solution for batch scoring an Apache Spark classification model using Azure Databricks.
Real-time scoring of Python and deep learning models
Deploy Python models as web services to make real-time predictions, using regular Python models or deep learning models.
Real-time scoring of R machine learning models
Implement a real-time prediction service in R using Microsoft Machine Learning Server running in Azure Kubernetes Service (AKS).
Real-time recommendation API
Train a recommendation model using Azure Databricks and deploy it as an API using Azure Machine Learning.
Enterprise-grade conversational bot
How to build an enterprise-grade conversational bot using the Azure Bot Framework.
Big data solutions
Enterprise BI with SQL Data Warehouse
ELT (extract-load-transform) pipeline to move data from an on-premises database into SQL Data Warehouse.
Automated enterprise BI with Azure Data Factory
Automate an ELT pipeline to perform incremental loading from an on-premises database.
Stream processing with Azure Databricks
Stream processing pipeline that joins records from two streams, enriches the result, and calculates a rolling average.
Stream processing with Azure Stream Analytics
End-to-end stream processing pipeline that correlates records from two data streams to calculate a rolling average.
Internet of Things
Azure IoT reference architecture
Recommended architecture for IoT applications on Azure using PaaS (platform-as-a-service) components.
Microservices on Azure Kubernetes Service (AKS)
Recommended architecture for deploying microservices on AKS.
Microservices architecture on Azure Service Fabric
Recommended architecture for microservices on Service Fabric.
Serverless web application
A serverless web application that serves static content from Blob Storage and implements an API using Azure Functions.
Event processing using Azure Functions
An event-driven architecture that ingests a stream of data and uses Functions to processes the data.
Hybrid network using a virtual private network (VPN)
Connect an on-premises network to an Azure virtual network.
Hybrid network using ExpressRoute
Use a private, dedicated connection to extend an on-premises network to Azure.
Hybrid network using ExpressRoute with VPN failover
Use ExpressRoute with a VPN as a failover connection for high availability.
Hub-spoke network topology
Create a central point of connectivity to your on-premises network, while isolating workloads.
Hub-spoke topology with shared services
Extend a hub-spoke topology by including shared services such as Active Directory.
DMZ between Azure and on-premises
Use network virtual appliances to create a secure hybrid network.
DMZ between Azure and the Internet
Use network virtual appliances to create a secure network that accepts Internet traffic.
Highly available network virtual appliances
Deploy a set of network virtual appliances (NVAs) for high availability in Azure.
N-tier application with SQL Server
Virtual machines configured for an N-tier application using SQL Server on Windows.
Multi-region N-tier application
N-tier application in two regions for high availability, using SQL Server Always On Availability Groups.
N-tier application with Cassandra
Virtual machines configured for an N-tier application using Apache Cassandra on Linux.
Jenkins build server
Scalable, enterprise-grade Jenkins server on Azure.
SharePoint Server 2016 farm
Highly available SharePoint Server 2016 farm on Azure with SQL Server Always On Availability Groups.
SAP NetWeaver on Windows, in a high availability environment that supports disaster recovery.
SAP S/4HANA on Linux, in a high availability environment that supports disaster recovery.
SAP HANA on Azure Large Instances
HANA Large Instances are deployed on physical servers in Azure regions.
Extend on-premises Active Directory to Azure
Integrate with Azure Active Directory
Integrate on-premises AD domains with Azure Active Directory.
Extend an on-premises Active Directory domain to Azure
Deploy Active Directory Domain Services (AD DS) in Azure to extend your on-premises domain.
Create an AD DS forest in Azure
Create a separate AD domain in Azure that is trusted by your on-premises AD forest.
Extend Active Directory Federation Services (AD FS) to Azure
Use AD FS for federated authentication and authorization for components running in Azure.
Basic web application
Web application with Azure App Service and Azure SQL Database.
Highly scalable web application
Proven practices for improving scalability in a web application.
Highly available web application
Run an App Service web app in multiple regions to achieve high availability.
Web application monitoring on Azure
Monitor a web application hosted in Azure App Service.