DoorDash Uses Envoy and Valkey for a 1.5M RPS Proxy Cache with 99.99999% Availability

Leela Kumili ยท rss ยท 2026-07-20 Reader ๐Ÿ–ฅ๏ธ

Distributed Caching & InvalidationInfrastructure EfficiencyModularity & CouplingSoftware Design FundamentalsSRE & Incident Response
DoorDash's Entity Cache shows that moving caching out of individual services and into a transparent, infrastructure-layer proxy (Envoy + Valkey) โ€” with event-driven invalidation, staleness-tolerant failure handling, and stampede-avoidance techniques โ€” can absorb very large request volume at extremely high availability without requiring any application code changes.

practical ยท expository, with one embedded narrative โ€” A news report (InfoQ relaying a DoorDash engineering-blog post) describing an existing production system and its measured outcomes. It doesn't argue for the pattern so much as narrate it and report DoorDash's own numbers as fact, with one production-outage anecdote functioning as informal proof of the reliability claims.

Structure

PartRole
Problem framingEstablishes the motivation: frequently-accessed, infrequently-changing data caused redundant service-to-service requests, extra backend load, extra compute cost, and higher tail latency as DoorDash's microservices ecosystem grew.
Architecture description (Envoy + Valkey, transparent proxy in the service mesh)Explains the mechanism: a proxy sits between client and upstream services, intercepting requests centrally so cache behavior is managed without touching application code.
DoorDash quote reframing Entity Cache as 'more than a traditional caching layer'States the article's real thesis in DoorDash's own words: a bundle of reliability and performance features, not just a cache.
Request-flow mechanics (hit/miss handling)Explains normal-path operation.
Invalidation and failure handling (Kafka-based event-driven invalidation, dual TTL, Envoy health-based rerouting)Presents the core design tradeoff: freshness vs. availability, resolved in favor of availability during failures.
Outage narrativeA single concrete production incident offered as evidence that the failure-handling design worked as intended.
Performance-optimization techniques (custom buffer pools, lock-free single-flight, XFetch probabilistic early refresh)Explains how the platform sustains 1.5M RPS without excessive overhead or stampede failures.
Quantified results (allocation reduction, throughput, P99 latency, hit rate, request reduction, proxy overhead)Supplies the numeric evidence for the overall claim that the pattern works at scale.

Key terms

Propositions

Arguments

Entity Cache's centralized, infrastructure-layer caching is a superior approach to ad hoc, per-service caching for a large microservices ecosystem. strength: medium
Explicit premises:
Implicit premises:
Inferences:
The staleness-tolerant design (dual TTL plus event-driven invalidation plus health-based rerouting) makes Entity Cache reliable enough to keep serving through infrastructure failures. strength: low
Explicit premises:
Implicit premises:
Inferences:

Narratives

Questions addressed

Gaps

Related documents