Serverless Image Processing: Trigger Lambda from S3 Uploads
A company is designing a new application that will process images uploaded by users. The application must automatically resize images and store them in Amazon S3. The solution should be serverless and event-driven. Which THREE AWS services should be used together? (Choose three.)
⚠ Common exam trap
The trap is over-engineering the solution by adding SQS for 'decoupling' when the question explicitly asks for a serverless, event-driven design that only needs S3, Lambda, and S3 Event Notifications.
Answer choices
Why each option matters
Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.
Correct answer & explanation
✓
Amazon S3
Amazon S3 (A) is correct because it serves as the storage layer where users upload the original images and where the resized images are ultimately stored, making it the foundation of this event-driven, serverless design. AWS Lambda (B) is correct because it provides the serverless compute that runs the image-resizing code in response to events, eliminating the need to manage servers. Amazon S3 Event Notification (E) is correct because it is the event source that detects object-created events (e.g., s3:ObjectCreated:*) on the upload bucket and triggers the Lambda function, enabling the required event-driven behavior. Amazon EC2 (C) is not appropriate because it requires provisioning and managing virtual servers, which contradicts the serverless requirement. Amazon Simple Queue Service (D) is not needed here because S3 Event Notifications can invoke Lambda directly, so no queue is required to decouple the upload from the processing in this scenario.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Amazon S3
Why this is correct
Amazon S3 provides the event source: uploads emit `s3:ObjectCreated:*` notifications that trigger downstream compute, satisfying the event-driven requirement without polling. It also serves as the durable storage target for resized images, meeting the serverless constraint since no servers are provisioned or managed for either ingestion or persistence.
- ✓
AWS Lambda
Why this is correct
AWS Lambda supplies the serverless compute that executes the resize logic, invoked asynchronously by S3 event notifications when each uploaded object lands in the bucket. This satisfies the stem's event-driven and serverless constraints, since no EC2 instances or clusters are provisioned or managed, and scaling follows request volume automatically.
- ✗
Amazon EC2
Why it's wrong here
EC2 is not serverless; it would require management.
- ✗
Amazon Simple Queue Service (SQS)
Why it's wrong here
SQS decouples producers from consumers but adds a queue layer the event-driven resize flow does not require, since S3 events can invoke compute directly. It tempts for buffering bursts or absorbing downstream failures, which matters when processing is asynchronous and rate-limited.
- ✓
Amazon S3 Event Notification
Why this is correct
Amazon S3 Event Notification supplies the event-driven trigger the stem demands: an `s3:ObjectCreated:*` event fires the moment an upload lands in the bucket, invoking the compute service without polling. This satisfies the serverless, event-driven constraint by removing any need for scheduled checks or a persistently running listener.
Quick reference
AWS S3 Storage Class Comparison
| Storage Class | Min Duration | Retrieval | Use Case |
|---|---|---|---|
| S3 Standard | None | Immediate | Frequently accessed data |
| S3 Standard-IA | 30 days | Immediate | Infrequent access, rapid retrieval |
| S3 One Zone-IA | 30 days | Immediate | Non-critical infrequent data |
| S3 Intelligent-Tiering | None | Immediate–hours | Unknown or changing access patterns |
| S3 Glacier Instant | 90 days | Milliseconds | Archive with instant retrieval |
| S3 Glacier Flexible | 90 days | Minutes–hours | Archive, flexible retrieval |
| S3 Glacier Deep Archive | 180 days | Hours | Long-term compliance archive |
Go deeper
Related to this question
About these practice questions
This SAP-C02 question is part of Courseiva's 984-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →
JA
Written and reviewed by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
Last reviewed September 2026 · checked against the official Amazon Web Services exam blueprint
This SAP-C02 practice question is part of Courseiva's free Amazon Web Services certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SAP-C02 exam.