The map
- Not started
- In progress
- Done
- Builds on
- 01Ground rulesWhere things run, who may touch them0/4
- 02The networkVPCs, firewalls, load balancers0/3
- 03ComputeServers, containers, functions0/2
- 04Storage and databasesObjects, disks, SQL, key-value0/4
- 05MessagingQueues, topics, event buses0/2
- 06Running itSignals, bills, surviving failure0/3
- 07Next: system designSame ideas, at service scale
- Competing consumersLibrary ↗Several workers polling one SQS queue is this pattern. It explains how to scale consumers, and why each message may still be handled twice.
- Idempotency keysLibrary ↗SQS standard queues, SNS, EventBridge and Lambda retries all deliver at least once. Idempotent handlers are what make that safe.
- Retry with backoff and jitterLibrary ↗SDKs, Lambda event sources and EventBridge all retry for you. This is how to retry without turning one failure into a storm.
- Publish/subscribeLibrary ↗SNS topics and EventBridge rules are managed publish/subscribe. The pattern covers fan-out, filtering and what subscribers must not assume.
- Cell-based architectureLibrary ↗AWS builds its own services as independent cells per zone and Region. The pattern shows how to apply the same blast-radius thinking to your system.
- Graceful degradationLibrary ↗When a zone or a dependency fails, serving a reduced answer often beats failing completely. This is how to design for that.
Written against the AWS documentation as of October 2026. Recent changes are called out where they matter: S3 strong read-after-write consistency (since December 2020), the 1 MiB SQS message size limit, Lambda's per-function scaling rate, regional NAT gateways, the charge for every public IPv4 address, and the X-Ray SDKs entering maintenance mode in favour of OpenTelemetry (February 2026). No command on these pages was run against a real AWS account: the JSON and shell examples are illustrative, and the two js run toys simulate behaviour locally.
Where this path leads
- Terraform: infrastructure as code that you can trust →How Terraform turns declarative configuration into real infrastructure: the plan and apply cycle, the state file it all depends on, how to change and refactor resources without destroying them, how to split environments and modules, how to test and police changes, and where OpenTofu fits.
- Staying up at scale →Contain failures so most users never notice them.
- Event-driven systems →Let services react to what happened, and make long processes finish.