Zhivko Todorov
ALL CASE STUDIES

CASE 153 · BISTRO · 2023

CLOUDFRONTORIGIN FAILOVERS3ALB

A primary origin that can fail, with a secondary already ready.

A restaurant booking platform served static fallback content for their app when the dynamic API was down — a "we’re experiencing issues, check back soon" page. Until the API actually went down, when it turned out the fallback wasn’t wired to anything. We added CloudFront Origin Failover.

INDUSTRY

Restaurant booking

DOMAIN

RELIABILITY

DELIVERED

2023

STACK

CLOUDFRONT·ORIGIN FAILOVER·S3 (FALLBACK)·ALB (PRIMARY)·CLOUDFRONT FUNCTIONS

RESULTS

What changed, by the numbers.

OUTAGE EXPERIENCE

GRACEFUL

PAGE INSTEAD OF 503

CUSTOMER PERCEPTION

IMPROVED

+0.3 APP RATING

FAILOVER LATENCY

< 5s

CONSECUTIVE 5xx

NO-OUTAGE COST

NEGLIGIBLE

S3 STATIC HOSTING

HOW IT WENT

The fallback page existed in S3. The wiring did not. During the actual outage, customers got 503 errors from CloudFront because the primary ALB origin was returning 503s and the secondary "origin" was a hopeful idea, not a configuration.

CloudFront Origin Failover with an Origin Group containing the ALB (primary) and the S3 bucket (secondary, with a 502/503/504 failover criteria) made the wiring real. When the primary returned consecutive 5xx, CloudFront automatically served from S3.

The next outage — six months later, lasted 14 minutes — served the fallback page instead of a 503. App rating in the post-outage week was unchanged from before, instead of dropping by the usual 0.3 a noticeable outage costs.

READY WHEN YOU ARE

Let's get your AWS bill (and architecture) in order.

The discovery call is free. You walk away with at least one concrete idea — even if we never work together.

Or email directly →