Cloud Architecture

22 - Static Content Hosting Pattern (Save cost and gain performance for static websites!)

22 - Static Content Hosting Pattern (Save cost and gain performance for static websites!)

2021-01-15

Serving static HTML, CSS, images, and JavaScript from a general-purpose web server wastes compute and money. The Static Content Hosting pattern offloads these assets to cloud storage—Azure Blob Storage, AWS S3, or GCP Storage—optionally fronted by a CDN for global performance and storage-tier scalability. This episode walks through the pattern, a real-world implementation with Hugo and Azure CDN, and the trade-offs to consider.

21 - The Queue Based Load Levelling and Competing Consumers Pattern

21 - The Queue Based Load Levelling and Competing Consumers Pattern

Do you have an application with specific scalability and continuity-of-service requirements? What happens when traffic spikes dramatically — think a major concert or FIFA World Cup ticket sale crashing a site? In this Architecting for the Cloud episode, Chris and Will Eastbury walk through three closely related patterns: Queue-Based Load Levelling, Competing Consumers, and the Asynchronous Request-Reply pattern. They explore how message queues act as shock absorbers for traffic spikes, how competing consumers enable elastic horizontal scaling, and how async request-reply lets you retrofit these patterns into existing architectures with minimal disruption. Key trade-offs covered include queue depth limits, Azure Service Bus configuration, distributed tracing with Application Insights, and when the added complexity genuinely justifies reaching for these patterns.

20 - The Anti-corruption layer, Gateway Aggregation and Gateway Routing patterns

20 - The Anti-corruption layer, Gateway Aggregation and Gateway Routing patterns

Peter Piper joins Chris Reddington for another episode in the Architecting for the Cloud, One Pattern at a Time series. Building on the Façade and Strangler patterns, they explore three related cloud design patterns: the Anti-Corruption Layer (translating between legacy and modern domain models), Gateway Aggregation (collapsing multiple backend calls into a single client response), and Gateway Routing (layer-7 routing to decouple consumers from versioned backend services). Real Azure service examples — including API Management, Application Gateway, and Azure Front Door — are used throughout.

19 - The Event Sourcing, Materialized View and CQRS Patterns

19 - The Event Sourcing, Materialized View and CQRS Patterns

2020-12-23

What if you stored not just the current state of your data, but every event that produced it? The Event Sourcing pattern captures the full history of changes as an append-only log — enabling audit trails, temporal queries, and history replay. Combined with Materialized Views for efficient read-side querying and CQRS for command/query separation, these three patterns form a cornerstone of modern event-driven architecture. Chris and Steph explore all three in this episode of Architecting for the Cloud.

11 - The Geode Pattern - What is it and how can it be useful for my app?

11 - The Geode Pattern - What is it and how can it be useful for my app?

2020-12-21

You may know patterns like Retry, Circuit Breaker, or Deployment Stamps — but have you heard of the Geode pattern? In this Architecting for the Cloud episode, Chris and Will Eastbury (who contributed to the original Azure Architecture Center documentation for this pattern) explore how Geodes enable planet-scale, active-active applications where every node can serve any user from any region. Unlike Deployment Stamps (which are tenant-scoped), Geodes replicate data across all regions, eliminating active-passive compute wastage and delivering consistent low-latency experiences globally. The session covers key trade-offs around data sovereignty, replication costs, and the evolution toward intelligent edge deployments — and includes a walkthrough of a globally distributed real-time voting app built with Azure Functions, Cosmos DB, and SignalR.

18 - Tales from the Real World - Defying Gravity.. The magic behind Flight Simulator 2020

18 - Tales from the Real World - Defying Gravity.. The magic behind Flight Simulator 2020

2020-12-18

What's actually powering Microsoft Flight Simulator 2020 — and what can cloud architects learn from it? Chris Reddington takes to the virtual skies over Queensland with former colleague Cam Adams, flying a Cessna 172 from Archerfield aerodrome while discussing the real Azure services behind one of the most technically ambitious games ever made. From CDN-based asset distribution and event-driven live weather to PlayFab game backends and DDoS protection — this is cloud architecture on the fly.

17 - The Throttling, Retry and Circuit Breaker Patterns

17 - The Throttling, Retry and Circuit Breaker Patterns

2020-12-04

How do you protect your infrastructure from traffic spikes, safeguard multi-tenant workloads from noisy neighbours, and handle transient failures gracefully? Chris and John Downs walk through three essential cloud resilience patterns: Throttling (protecting services from excess load via rate limiting and HTTP 429), Retry (handling transient faults with exponential backoff), and Circuit Breaker (preventing cascade failures). Part of the "Architecting for the Cloud, One Pattern at a Time" series — essential viewing for any developer building on Azure.

16 - The Backends for Frontends and Strangler Pattern with Peter Piper

16 - The Backends for Frontends and Strangler Pattern with Peter Piper

2020-11-22

Managing APIs across web, mobile, and multiple consumer types creates tight coupling that slows modernisation and makes versioning painful. In this episode, Chris Reddington is joined by Peter Piper to explore the Backend for Frontends (BFF) pattern — creating dedicated backends tailored to each consumer — alongside the Strangler Fig pattern for incrementally migrating legacy monoliths without disrupting existing clients. The Façade pattern also features as a key decoupling mechanism for smooth API migrations. Part of the "Architecting for the Cloud, One Pattern at a Time" series.

15 - The Sharding and Index Table Patterns

15 - The Sharding and Index Table Patterns

2020-11-13

Concerned about the scalability of your data layer, or do you need data segregation for customers with regional data residency requirements? The Sharding pattern addresses exactly these challenges. If you are using a NoSQL data store without native secondary index support, the Index Table pattern provides an elegant solution for efficient querying. In this episode, Chris is joined by Steph Martin to explore both patterns in depth: shard key strategies (lookup, range, hash), cross-shard query design, the Azure SQL Database elastic client library, and how the Index Table pattern solves query efficiency challenges in stores like Cassandra and Cosmos DB.

14 - The Deployment Stamps Pattern

14 - The Deployment Stamps Pattern

2020-11-06

The Deployment Stamps pattern is a powerful cloud architecture approach for scaling, resilience, and multi-tenancy. In this episode, Chris Reddington is joined by John Downs — who contributed the pattern to the Azure Architecture Center — to explore how stamping out independent copies of your application stack across regions enables geographic distribution, data sovereignty, isolated failure domains, and deployment rings for staged rollouts. Discover when to use this pattern, how Azure itself relies on it internally, and the key considerations around request routing, cross-stamp querying, and disaster recovery planning.