Skip to the content.

Software Architecture: The Friday Night Rush

The Business Goal

Byte Burger wants every customer to place an order before the lunch break ends. The existing application works, but Friday evenings expose slow pages and overloaded database queries.

The Story

The team first adds a faster oven and tunes the order book’s indexes. They remove session state from individual workers so another worker can answer the next request. The restaurant becomes faster without splitting into separate restaurants.

The Decision

Profile before redesigning. Improve inefficient queries, add appropriate indexes, cache safe reads, and scale stateless application workers horizontally. Put durable state in a database, cache, or session store—not in one worker’s memory.

Decision Record

Field Decision
Valid while One application can scale with predictable database and cache behavior
Operational tax More capacity and monitoring, but still one deployment
Invalidation trigger One capability creates disproportionate load or release/failure isolation becomes necessary
Reversal path Keep optimizing the single application while it meets the need; do not split it merely to work around a slow query

The Last Bite

Scale the measured bottleneck before multiplying the number of systems that can fail.

Next chapter: Software Architecture: The Kitchen Cannot Answer the Phone

The next constraint is not speed. It is work that should not keep a customer waiting.