Yard office · 01
Send a request through the mesh
Everything here is live AWS, not an animation: your submission is published to a custom EventBridge bus, and every lamp that lights on the board below is a hop your event actually made, read back from its trace. All requests are fictional City of Alpenglow business and expire within 48 hours.
Control board · 02
Watch it move
Submit a request above, or click one in the arrivals board.
Content-based routing · one classification track per department
Every car on the rip track carries its own record, read live off the
queue with ReceiveMessage (peeked, not consumed): what it was, how many
deliveries failed, when it was first waybilled, and which track sidelined it.
Pub/sub fan-out · one topic, two subscriber types
Orchestration · urgent requests only
Train sheet · hop-by-hop trace
- No request selected yet.
Arrivals board · 03
Live activity
Recent requests through the mesh: yours, other visitors', and the scheduled local, a synthetic heartbeat that EventBridge Scheduler publishes every 30 minutes. Click one to replay its trace.
Loading…
Interlocking tester · 04
Test a routing pattern
EventBridge decides where an event goes by matching JSON patterns against its
envelope. Edit the event and the pattern below, then throw the lever: the tester runs a real
TestEventPattern call, the exact matcher the bus uses. Your event is also checked
against the yard's five live rules, read straight from the deployed rule resources so the
tester can never drift from the real interlocking.
The same event against the yard's live rules
Classification · 05
The block order: standard vs FIFO
A standard queue promises delivery, not order; a FIFO queue promises both,
and absorbs duplicates. This sends the same cut of 10 numbered cars to both queues in one
SendMessageBatch each, with one twist: car 7 is offered to the FIFO queue a
second time under the same deduplication id. 21 sends are accepted, 20 cars arrive. Each
arrival below is a real Lambda consumer recording its position.
Standard track · evt-race-standard
FIFO track · evt-race.fifo · one message group
Second section · 06
Replay the archive
Queues and topics forget a message the moment it is consumed. The bus does not have to: an EventBridge archive records every event for 2 days, and a replay runs a past window through the mesh again. Every rule matches the recorded events a second time, and each re-run traces as its own second section on the arrivals board, flagged with the run it repeats. Replay a window that includes a poison message and the rip track fills again; replay yesterday after the nightly sweep and the archive restores what the board forgot.
Reading the vault…
Timetable notes · 07
What this plank proves
- Decoupled, event-driven architecture: the producer knows nothing about the consumers. One published event is matched by up to five EventBridge rules, each fanning out independently to SQS, SNS, and Step Functions.
- Content-based routing you can poke: rules match on the event payload
(
detail.category,detail.priority), the pattern behind department inboxes, regional routing, and premium-tier handling. The interlocking tester runs your own patterns through the real matcher viaTestEventPattern. - Failure handling that's designed, not hoped for: per-message retry with visibility-timeout backoff, a dead-letter queue after three attempts, readable dead-letter evidence (delivery counts, timestamps, source queue), and an operator redrive path. The poison message demo exercises all of it.
- Replayability: an EventBridge archive records the bus for 2 days and visitor-triggered replays run past traffic through the mesh again, something a queue or topic cannot do once a message is consumed.
- Ordering and exactly-once where they matter: the block-order race shows a standard queue's best-effort delivery next to a FIFO queue's guaranteed order and 5-minute deduplication window, with the same producer batch feeding both.
- Orchestration with retries: an Express Step Functions workflow absorbs a deliberate transient fault via its declarative retry policy. Visible in the trace, invisible to the citizen.
- Durable pub/sub: one SNS topic feeding both a Lambda (push) and an SQS queue (durable pull), the two subscriber shapes real integrations need.
- ~$0 idle: EventBridge, SQS, SNS, Express Step Functions, Lambda, and DynamoDB are all free-tier or fractions of a cent per million at demo volume.