1. A global media streaming company publishes content-update events to an Amazon SNS topic. Four downstream services must each independently process every event: a CDN cache invalidation service, a search indexer, a recommendation engine, and an analytics pipeline. Each service has its own processing speed and must not be blocked by slow consumers. Which architecture pattern BEST achieves this fan-out requirement?
- A. Configure the SNS topic with four subscriptions, each pointing to a dedicated Amazon SQS standard queue; each downstream service polls its own queue✓ Correct
- B. Use a single Amazon SQS FIFO queue with message group IDs set per service to route messages to each consumer
- C. Configure the four services as direct HTTP endpoint subscribers on the SNS topic using HTTPS delivery
- D. Use Amazon EventBridge with a single rule that targets all four services simultaneously using a Lambda function that manually fans out the events
Explanation
The SNS-to-SQS fan-out pattern is the canonical AWS solution for this requirement. Each downstream service gets its own SQS queue subscribed to the same SNS topic. SNS delivers a copy of every message to each queue independently, so a slow consumer (e.g., the recommendation engine) does not block faster consumers (e.g., cache invalidation). Each service controls its own polling rate, retry behavior, and dead-letter queue. A single SQS FIFO queue cannot fan out to multiple independent consumers; all consumers would compete for the same messages, and each message would only be processed once. Direct HTTPS subscriptions to SNS create tight coupling—if any subscriber's endpoint is slow or unavailable, it affects retry behavior and does not decouple processing speeds. A single Lambda fan-out function introduces a single point of failure and adds unnecessary latency; EventBridge rules can target multiple services directly without needing an intermediary Lambda.