Architecture

Official Documentation

Getting Started

  1. 8/28/2017, Mva
    This technology-agnostic course begins by explaining the benefits of distributed cloud applications with an emphasis on maintaining high-availability and scalability in a...
  2. 12/8/2017, Ebook
    This guide presents a structured approach for designing cloud applications that are scalable, resilient, and highly available. The guidance in this ebook is intended to help...
  3. 2/10/2017, Video, 0:56:41
    One of the benefits of cloud technology that is only just being realised is the greatly reduced risk profile and timelines it enables when designing and delivering robust,...
  4. 9/23/2015, Ebook
    This guide contains twenty-four design patterns and ten related guidance topics that articulate the benefits of applying patterns by showing how each piece can fit into the...
  5. 12/8/2017, Ebook
    We created The Developer’s Guide to Microsoft Azure to help you on your journey to the cloud, whether you’re just considering making the move, or you’ve already decided and...
  6. 5/20/2016, Ebook
    This guide breaks down the “why” and “how” for scenarios suited to the cloud with a focus on building apps using platform services available in Microsoft Azure. The second...



Latest Content

Subscribe to News about Architecture

Title  
Blog
Blog
Blog
Video
Video
Video
Video
Video
Video
Blog
Blog
Blog
more...


Web Content

Architecture Documentation

1. Cloud Fundamentals
     1.1. Application architecture guide
          1.1.1. Introduction
          1.1.2. Architecture styles
               1.1.2.1. Overview
               1.1.2.2. N-tier application
               1.1.2.3. Web-queue-worker
               1.1.2.4. Microservices
               1.1.2.5. CQRS
               1.1.2.6. Event-driven architecture
               1.1.2.7. Big data
               1.1.2.8. Big compute
          1.1.3. Choosing a compute service
               1.1.3.1. Overview
               1.1.3.2. Decision tree
               1.1.3.3. Compute comparison
          1.1.4. Choosing a data store
               1.1.4.1. Overview
               1.1.4.2. Data store comparison
          1.1.5. Design principles
               1.1.5.1. Overview
               1.1.5.2. Design for self-healing
               1.1.5.3. Make all things redundant
               1.1.5.4. Minimize coordination
               1.1.5.5. Design to scale out
               1.1.5.6. Partition around limits
               1.1.5.7. Design for operations
               1.1.5.8. Use managed services
               1.1.5.9. Use the best data store for the job
               1.1.5.10. Design for evolution
               1.1.5.11. Build for the needs of business
          1.1.6. Pillars of software quality
     1.2. Data architecture guide
          1.2.1. Introduction
          1.2.2. Traditional RDBMS workloads
               1.2.2.1. Overview
               1.2.2.2. Online transaction processing (OLTP)
               1.2.2.3. Data warehousing
               1.2.2.4. Online analytical processing (OLAP)
               1.2.2.5. Extract, transform, and load (ETL)
          1.2.3. Big data architectures
               1.2.3.1. Overview
               1.2.3.2. Batch processing
               1.2.3.3. Real time processing
               1.2.3.4. Machine learning at scale
               1.2.3.5. Non-relational data stores
               1.2.3.6. Scenarios
                    1.2.3.6.1. Advanced analytics
                    1.2.3.6.2. Data lakes
                    1.2.3.6.3. Free-form text search
                    1.2.3.6.4. Interactive data exploration
                    1.2.3.6.5. Natural language processing
                    1.2.3.6.6. Time series solutions
                    1.2.3.6.7. Working with CSV and JSON files
               1.2.3.7. Technology choices
                    1.2.3.7.1. Analytical data stores
                    1.2.3.7.2. Analytics and reporting
                    1.2.3.7.3. Batch processing
                    1.2.3.7.4. Cognitive services
                    1.2.3.7.5. Data storage
                    1.2.3.7.6. Machine learning
                    1.2.3.7.7. Natural language processing
                    1.2.3.7.8. Pipeline orchestration
                    1.2.3.7.9. Real-time message ingestion
                    1.2.3.7.10. Search data stores
                    1.2.3.7.11. Stream processing
          1.2.4. Cross-cutting concerns
               1.2.4.1. Data transfer
               1.2.4.2. Extending on-premises data solutions to the cloud
               1.2.4.3. Securing data solutions
     1.3. Cloud design patterns
          1.3.1. Overview
          1.3.2. Categories
               1.3.2.1. Availability
               1.3.2.2. Data management
               1.3.2.3. Design and implementation
               1.3.2.4. Messaging
               1.3.2.5. Management and monitoring
               1.3.2.6. Performance and scalability
               1.3.2.7. Resiliency
               1.3.2.8. Security
          1.3.3. Ambassador
          1.3.4. Anti-corruption Layer
          1.3.5. Backends for Frontends
          1.3.6. Bulkhead
          1.3.7. Cache-Aside
          1.3.8. Circuit Breaker
          1.3.9. Command and Query Responsibility Segregation (CQRS)
          1.3.10. Compensating Transaction
          1.3.11. Competing Consumers
          1.3.12. Compute Resource Consolidation
          1.3.13. Event Sourcing
          1.3.14. External Configuration Store
          1.3.15. Federated Identity
          1.3.16. Gatekeeper
          1.3.17. Gateway Aggregation
          1.3.18. Gateway Offloading
          1.3.19. Gateway Routing
          1.3.20. Health Endpoint Monitoring
          1.3.21. Index Table
          1.3.22. Leader Election
          1.3.23. Materialized View
          1.3.24. Pipes and Filters
          1.3.25. Priority Queue
          1.3.26. Publisher/Subscriber
          1.3.27. Queue-Based Load Leveling
          1.3.28. Retry
          1.3.29. Scheduler Agent Supervisor
          1.3.30. Sharding
          1.3.31. Sidecar
          1.3.32. Static Content Hosting
          1.3.33. Strangler
          1.3.34. Throttling
          1.3.35. Valet Key
     1.4. Best practices for cloud applications
          1.4.1. API design
          1.4.2. API implementation
          1.4.3. Autoscaling
          1.4.4. Background jobs
          1.4.5. Caching
          1.4.6. Content Delivery Network
          1.4.7. Data partitioning
          1.4.8. Data partitioning strategies (by service)
          1.4.9. Monitoring and diagnostics
          1.4.10. Naming conventions
          1.4.11. Transient fault handling
          1.4.12. Retry guidance for specific services
     1.5. Performance antipatterns
          1.5.1. Overview
          1.5.2. Busy Database
          1.5.3. Busy Front End
          1.5.4. Chatty I/O
          1.5.5. Extraneous Fetching
          1.5.6. Improper Instantiation
          1.5.7. Monolithic Persistence
          1.5.8. No Caching
          1.5.9. Synchronous I/O
     1.6. Azure for AWS Professionals
          1.6.1. Overview
          1.6.2. Services comparison
2. Example Scenarios
     2.1. Overview
     2.2. AI
          2.2.1. Hotel reservation chatbot
          2.2.2. Image classification
     2.3. Apps
          2.3.1. Computer-aided engineering
          2.3.2. Decentralized trust between banks
          2.3.3. DevOps with containers
          2.3.4. DevOps with Azure DevOps
          2.3.5. SAP for dev/test
          2.3.6. SAP for production
          2.3.7. E-commerce front-end
          2.3.8. E-commerce API management
          2.3.9. E-commerce product search
     2.4. Data and Analytics
          2.4.1. Hybrid ETL with Data Factory
          2.4.2. IoT for construction
          2.4.3. Data warehousing and analytics
          2.4.4. Automotive IoT data
          2.4.5. Real-time fraud detection
          2.4.6. Scalable order processing
     2.5. Infrastructure
          2.5.1. Computational fluid dynamics (CFD)
          2.5.2. Linux virtual desktops
          2.5.3. Decomposing monolithic applications
          2.5.4. Highly scalable WordPress
          2.5.5. Highly Available Web Application
          2.5.6. Multi-tier Windows
          2.5.7. HPC video rendering
3. Reference Architectures
     3.1. Overview
     3.2. AI
          3.2.1. Distributed training of deep learning models
          3.2.2. Batch scoring of deep learning models
          3.2.3. Batch scoring of Python models
          3.2.4. Real-time scoring of Python and deep learning models
          3.2.5. Real-time scoring of R machine learning models
          3.2.6. Real-time Recommendation API
     3.3. Big data
          3.3.1. Enterprise BI with SQL Data Warehouse
          3.3.2. Automated enterprise BI with Azure Data Factory
          3.3.3. Stream processing with Azure Databricks
          3.3.4. Stream processing with Azure Stream Analytics
     3.4. Enterprise integration
          3.4.1. Basic enterprise integration
          3.4.2. Enterprise integration with queues and events
     3.5. Hybrid networks
          3.5.1. Choose a hybrid network architecture
          3.5.2. VPN
          3.5.3. ExpressRoute
          3.5.4. ExpressRoute with VPN failover
          3.5.5. Hub-spoke topology
          3.5.6. Hub-spoke topology with shared services
          3.5.7. Troubleshoot a hybrid VPN connection
     3.6. Identity management
          3.6.1. Choose an Active Directory integration architecture
          3.6.2. Integrate on-premises AD with Azure AD
          3.6.3. Extend AD DS to Azure
          3.6.4. Create an AD DS forest in Azure
          3.6.5. Extend AD FS to Azure
     3.7. Internet of Things (IoT)
     3.8. Network DMZ
          3.8.1. DMZ between Azure and on-premises
          3.8.2. DMZ between Azure and the Internet
          3.8.3. Highly available network virtual appliances
     3.9. SAP
          3.9.1. SAP NetWeaver for AnyDB
          3.9.2. SAP S/4HANA
          3.9.3. SAP HANA on Azure Large Instances
     3.10. Serverless
          3.10.1. Serverless web application
          3.10.2. Serverless event processing
     3.11. VM workloads
          3.11.1. Single Linux VM
          3.11.2. Single Windows VM
          3.11.3. Jenkins server
          3.11.4. N-tier application with SQL Server
          3.11.5. Multi-region N-tier application
          3.11.6. N-tier application with Cassandra
          3.11.7. SharePoint Server 2016
     3.12. Web applications
          3.12.1. Basic web application
          3.12.2. Improved scalability
          3.12.3. Multi-region deployment
          3.12.4. Web application monitoring
4. Design Guides
     4.1. Build microservices on Azure
          4.1.1. Introduction
          4.1.2. Domain analysis
          4.1.3. Identifying microservice boundaries
          4.1.4. Data considerations
          4.1.5. Interservice communication
          4.1.6. API design
          4.1.7. Ingestion and workflow
          4.1.8. API gateways
          4.1.9. Logging and monitoring
          4.1.10. CI/CD
     4.2. Manage multitenant identity
          4.2.1. Introduction
          4.2.2. The Tailspin scenario
          4.2.3. Authentication
          4.2.4. Claims-based identity
          4.2.5. Tenant sign-up
          4.2.6. Application roles
          4.2.7. Authorization
          4.2.8. Secure a web API
          4.2.9. Cache access tokens
          4.2.10. Client assertion
          4.2.11. Protect application secrets
          4.2.12. Federate with a customer's AD FS
          4.2.13. Run the Surveys application
     4.3. Migrate from Cloud Services to Service Fabric
          4.3.1. Migrate a Cloud Services application to Service Fabric
          4.3.2. Refactor a Service Fabric application
5. Design Review Framework
     5.1. Design for resiliency
     5.2. Failure mode analysis
     5.3. Availability checklist
     5.4. DevOps checklist
     5.5. Resiliency checklist (general)
     5.6. Resiliency checklist (Azure services)
     5.7. Scalability checklist
6. Enterprise Cloud Adoption
     6.1. Introduction
     6.2. Getting Started
          6.2.1. Overview
          6.2.2. How does Azure work?
          6.2.3. What is cloud resource governance?
          6.2.4. Resource access governance in Azure
     6.3. Business Justification
          6.3.1. Building a cloud migration business case
          6.3.2. Understanding financial models
     6.4. Digital Estate
          6.4.1. 5 Rs of Rationalization
          6.4.2. What is a digital estate?
          6.4.3. Approaches to digital estate planning
          6.4.4. Gather inventory data
          6.4.5. Rationalize the digital estate
          6.4.6. Forecast cloud costs
     6.5. Governance
          6.5.1. Overview
          6.5.2. Governance design for a single team
          6.5.3. Governance design for multiple teams
     6.6. Infrastructure
          6.6.1. Deploy a basic workload
     6.7. Operations
          6.7.1. Overview
          6.7.2. Establish an operational fitness review
     6.8. Appendix
          6.8.1. Virtual Data Center (VDC)
          6.8.2. Azure enterprise scaffold
          6.8.3. Implementing Azure enterprise scaffold

Online Training Content

Date Title
8/28/2017 Architecting Distributed Cloud Applications
1/13/2015 Architecting Microsoft Azure Solutions

Tools

Tool Description

Videos

Date Title Length
12/20/2018
Learning Azure: Part 3—A quick tour of Microsoft Learn
0:08:50
12/20/2018
Learning Azure: Part 2—Architecture and interactive APIs for .NET and REST APIs
0:08:50
12/20/2018
Learning Azure: Part 2—Architecture and interactive APIs for .NET and REST APIs
0:12:04
12/20/2018
Learning Azure: Part 3—A quick tour of Microsoft Learn
0:10:55
12/20/2018
Learning Azure: Part 1—Azure Docs tips and tricks
0:08:51
12/20/2018
Learning Azure: Part 1—Azure Docs tips and tricks
0:09:55
12/11/2018
Building Web APIs Part 3
0:35:33
12/11/2018
Building Web APIs Part 3
0:32:22
12/5/2018
Building Web APIs Part 2
0:29:49
11/27/2018
Building Web APIs Part 1
0:38:51

Page 1 of 7