Azure Guidance

patterns & practices

The Microsoft patterns & practices team is part of the Azure Customer Advisory Team. Our purpose is to help developers, architects, and IT professionals be successful on the Microsoft Azure platform. We develop guidance that shows best practices for building cloud solutions on Azure.

Checklists

These lists are a quick reference for reviewing the fundamental aspects of availability and scalability.

  • Availability Checklist

    A summary of recommended practices for ensuring availability.

  • Scalability Checklist

    A summary of recommended practices for designing and implementing scalable services and handling data management.

Best practices articles

These articles provide an in-depth discussion of important concepts commonly associated with cloud computing.

  • API Design

    A discussion of design issues to consider when designing a web API.

  • API Implementation

    A set of recommended practices for implementing and publishing a web API.

  • API security guidance

    A discussion of authentication and authorization concerns (for example, token types, authorization protocols, authorization flows, and threat mitigation).

  • Autoscaling guidance

    A summary of considerations for scaling solutions without the need for manual intervention.

  • Background Jobs guidance

    A description of available options and recommended practices for implementing tasks that should be performed in the background, independently from any foreground or interactive operations.

  • Content Delivery Network (CDN) guidance

    General guidance and recommended practice for using the CDN to minimize the load on your applications, and maximize availability and performance.

  • Caching guidance

    A summary of how to use caching to improve the performance and scalability of a system.

  • Data Partitioning guidance

    Strategies that you can use to partition data to improve scalability, reduce contention, and optimize performance.

  • Monitoring and Diagnostics guidance

    Guidance on tracking how your users utilize your system, trace resource utilization, and generally monitor the health and performance of your system.

  • Recommended naming conventions

    Recommended naming conventions for Azure resources.

  • Retry General guidance

    Discussion of the general concepts for handling transient faults.

  • Retry Service-specific guidance

    A summary of retry features for many of Azure services, including information to help you use, adapt, or extend the retry mechanism for that service.

Scenario guides

  • Running Elasticsearch on Azure

    Elasticsearch is a highly scalable open-source search engine and database. It is suitable for situations that require fast analysis and discovery of information held in large datasets. This guidance looks at some key aspects to consider when designing an Elasticsearch cluster.

  • Identity management for multitenant applications

    Multitenancy is an architecture where multiple tenants share an application but are isolated from one another. This guidance shows you how to manage user identities in a multitenant application, using Azure Active Directory to handle sign-in and authentication.

  • Developing big data solutions

    This guide explores the use of HDInsight for scenarios such as iterative exploration, as a data warehouse, for ETL processes, and integration into existing BI systems. It also includes guidance on understanding the concepts of big data, planning and designing big data solutions, and implementing these solutions.

Patterns

Reference architectures

Our reference architectures are arranged by scenario. Each individual architecture offers recommended practices and prescriptive steps, and an executable component that embodies the recommendations.

The current library of reference architectures is available at http://aka.ms/architecture.

Resiliency guidance

These topics describe how to design applications that are resilient to failure in a distributed cloud environment.

  • Resiliency overview

    How to build applications on the Azure platform that can recover from failures and continue to function. Describes a structured approach to achieve resiliency,from design to implementation, deployment, and operations.

  • Resiliency checklist

    A checklist of recommendations that will help you plan for a variety of failure modes that could occur.

  • Failure mode analysis

    Failure mode analysis (FMA) is a process for building resiliency into a system, by identifying possible failure points. As a starting point for your FMA process,this article contains a catalog of potential failure modes and their mitigations.