This Patterns and Practices resource depicts common problems in designing cloud-hosted applications and design patterns that offer guidance. These design patterns are useful for building reliable, scalable, secure applications in the cloud.
Each pattern describes the problem that the pattern addresses, considerations for applying the pattern, and an example based on Microsoft Azure. Most of the patterns include code samples or snippets that show how to implement the pattern on Azure. However, most of the patterns are relevant to any distributed system, whether hosted on Azure or on other cloud platforms. Also see https://docs.microsoft.com/en-us/azure/architecture/patterns/