Synchronous link vs outbox

A synchronous write makes the chat wait for the archive on Earth, 1.28 s away one way. An outbox saves the message in a local durable queue, answers at once and sends it later. With the synchronous link, p99 is 7,360 ms. With the outbox, p99 is 71 ms and every message reaches the archive.

Play the level

Light across a planetDrag or use arrow keys to pick a path

Lasers in orbit, New York to London · 7,151 km · 24 ms one way

A queue between two speedsDrag or use arrow keys to change the workers

4 workers · 3 jobs waiting · wait 33 ms

Case 1

The Moon base chat gets 5 messages/s for 20 s. Each must be answered within 300 ms and reach the archive on Earth within 30 s. No message may be lost.

Case 1
Measure Goal Chat waits for Earth Local outbox, then relay
p99 latency under 300 ms 7.4 s Fail 71 ms Pass
Lost writes none 0 Pass 0 Pass
Completion time under 30 s 0 s Pass 23.32 s Pass
Monthly cost 28 USD/mo 24 USD/mo
Error rate 0.2% 0%
Level rules none broken Board is not complete Fail Pass
HTTP/2SQLUsersAPI server1 vCPU · 1 GBPostgres2 vCPU · 4 GBAPI server2 vCPU · 1 GB
HTTP/2HTTP/2SQLUsersAPI serverPostgresAPI server
Chat waits for Earth: misses a goal
AMQPSQLUsersAPI server1 vCPU · 1 GBPostgres2 vCPU · 4 GBMessage bro…1 vCPU · 1 GB
HTTP/2AMQPSQLUsersAPI serverPostgresMessage bro…
Local outbox, then relay: meets the goals