This chapter is an outline. The curriculum, learning objectives and
structure are settled; the prose, diagrams and code are still being written.
What is below is the plan for the chapter, not the chapter.
Lab 06 — FIFO ordering and message groups
Goal
Ordering inside a group, parallelism across groups, and head-of-line blocking.
Setup
To be written — CLI commands and an IaC equivalent for every resource, all prefixed sqs-course-.
Steps
- Create a
.fifoqueue with content-based deduplication - Send 10 messages with one
MessageGroupId; consume and confirm strict order - Send the same message twice within 5 minutes; confirm only one is enqueued
- Send the same body with different message attributes; observe it is also deduplicated
- Send 10 messages across 5 groups; run 5 consumers; observe parallelism
- Make one message fail repeatedly; observe its whole group stall while others proceed
What you should observe
- Ordering holds within a group and not across groups
- Content-based dedup hashes the body only — attributes do not make a message unique
- One bad message blocks exactly one group
Why it happened
To be written — ties each observation back to the mechanism in 07 — FIFO Queues.
Experiments to try
To be written — deliberate variations that change the outcome.
Teardown
To be written — every resource created above, in dependency order.
← Back to: 29 — Hands-on Labs