00 /What You Will Learn
By the end you will be able to
- Explain the dual-write problem and what each order of the two writes can lose.
- Explain the transactional outbox: event and data in one transaction, a relay publishes later.
- Use FOR UPDATE SKIP LOCKED so several relays share work without overlap.
- Explain why delivery is at least once, and make a consumer idempotent with an inbox.
Before you start
Finish Lab 05 (SQL Transactions and Isolation) and Lab 17 (Queue Basics) first. You should know BEGIN, COMMIT, ROLLBACK, and what a message broker is. Docker Desktop and Python 3 are needed.