← All posts
# Code 4 min read

The 6pm Problem

How we handle traffic that's flat all day and then goes vertical for ninety minutes, every single night.

Adam Guild
Adam Guild
Co-founder + CEO

Restaurant traffic has one shape: nearly nothing until late afternoon, then a wall at dinner. Across time zones the wall rolls from east to west, and on Fridays it is taller. Averages are useless here; the only number that matters is the peak minute.

Scaling for the wall

Autoscaling reacts in minutes, but the dinner rush ramps in seconds. We stopped waiting for metrics and started scaling on the clock, warming capacity thirty minutes ahead of each region's rush.

  1. Pre-warm compute per time zone on a schedule.
  2. Cache menus at the edge, invalidated only on edit.
  3. Queue order submission so a slow POS never blocks checkout.

What we watch

We alert on p99 checkout latency during the rush window only. Outside it, the same latency would page someone for traffic that does not exist.

The result is boring dinners, which is exactly what a restaurant wants from its software.