Context
A read-heavy endpoint: API Gateway in front, Lambda behind it, DynamoDB as the store, Valkey as the cache. On a warm path it answers in single-digit milliseconds, and that number tells you almost nothing.
What decides whether this design survives is the unhappy path: the first request after a deploy, the moment a hot key expires while a thousand requests want it, the write that leaves the cache confidently wrong, and the table that starts throttling exactly when traffic is worth having.
Build it against LocalStack or a real account — your call, and worth writing down which and why. Then break each of those four.