Edge Cache and CDN Platform  ·  View 05 of 29  ·  2 · People and journeys

Journey — Publishing a Release Worldwide

A release engineer changes prices on two million product pages at 19:00. The worry is not whether the purge was sent, but whether every PoP applied it.

Editable source SVG draw.io All views
Release engineer retail storefront Goal — No customer sees yesterday's price after 19:00 Trigger — A price change touching 2 million product pages Done when — Every PoP acknowledged; stale ratio flat 1 · Build 2 · Deploy 3 · Invalidate ◆ moment of truth 4 · Confirm ◆ moment of truth 5 · Watch What they do Hashes asset URLs Deploys the origin Purges tag price-list Reads per-PoP acks Watches cache status System behind it Versioned-URL rule Shield revalidation Purge API Ack ledger Grafana How it feels Calm Watchful Worried Where it hurts Cold origin after deploy 2 M objects, one tag GRU has not acked What the platform gives Assets need no purge Shield collapses refetch One row, not 2 M deletes Absent PoP replays log Stale ratio per path Journey — Release Engineer Changes Prices on Two Million Pages v 1.0 · owner Edge Architecture · date 2026-09

The trough, and the answer

  • One PoP, GRU, has not acknowledged. The status page names it rather than reporting 94% done. GRU was on a transit incident and withdrawn, so it is serving nobody; when it returns it replays the log before announcing again (view 17).
  • A tag addressing two million objects costs the same as a purge of one URL. The PoP stores one row with a timestamp and compares against it on lookup (ADR-13).

Decisions it forces

  • Assets are versioned URLs and never purged. Only the HTML and the price API are invalidated, and each path records which strategy governs it.
  • Prices use expire, not purge. If the origin struggles under the refetch, standard paths can still serve the old price for a declared 60 seconds, and that trade was approved by the property owner beforehand.
  • The purge API returns 202 with a sequence number. Acknowledgement is a separate, observable outcome, never assumed from a successful call.

Numbers

  • 99% of PoPs acknowledge within 5 s p95 and 30 s p99. A typical run takes under 2 s.
  • Per-property purge budget of 50 records per second sustained with a burst of 5,000, so one team's bulk publish cannot delay another team's purge.