Cache stampede after Redis failover

On-call incidentHard40 min

Your task

Your product catalog service (Go, Redis cache in front of Postgres) serves 40k rps at peak. At 09:02 a Redis cluster failover completes after a node crash; the new primary comes up with an empty keyspace. Immediately, p99 on GET /product/{id} spikes from 25ms to 9s, Postgres CPU pegs at 100%, the Go service's goroutine count balloons from ~2k to 200k, and you start seeing context-deadline-exceeded errors. Redis hit rate is near 0% and slowly recovering. No code deploy occurred. Triage and mitigate.

It covers

  • Cold cache
  • Cache stampede
  • Redis