caching

  • A cold start after a failover

    A promoted standby serving traffic with an empty cache and a cold opcode cache, measured during a drill. The warm-up script existed and was bound to the wrong…

  • The reporting database that is not a replica

    A read replica serving reports, and reports that want a different schema. Eleven indexes on production tables that exist only for reporting.

  • Redis 8, a year on, and nothing to report

    A major version upgrade in May 2025, after thirteen months of a pin, and twelve months of nothing happening. Writing down that nothing happened is the only way…

  • A cache key registered with what regenerates it

    A registry of cache keys, maintained by review, one year after the incident that produced it. The registry has drifted twice in a year and both times the…

  • Reading from a replica, and the request that must not

    Two years of read splitting, and the twelfth place that had to read the primary. Naming the two reads differently is what keeps the count knowable — twelve…

  • A transient stampede on a cold cache

    A transient holding an expensive query result, expiring at a fixed time, and four hundred requests recomputing it simultaneously. The stale copy with a longer lifetime is what…

  • The read model that finally earned its place

    A projection deleted in 2023 for being premature, rebuilt in 2025 because the query is now eleven seconds.

  • A cold start after a deploy, warmed deliberately

    A deploy that invalidates the opcode cache and the application cache simultaneously, and a first minute that is measurably worse. Warming before the health check passes is the…

  • Cache invalidation by version prefix, three years on

    A version constant in every cache key since 2022, and what three years of using it actually looked like. Seven bumps in three years is roughly the rate…

  • A compatibility suite retired after a year

    A monthly job comparing two servers, kept for thirteen months to preserve an option, and switched off once the option stopped mattering. The tests were the valuable artefact…