DVA-C02 Development with AWS Services Practice Question
A developer is deploying a web application using AWS Elastic Beanstalk. The application needs to store session state. Which THREE services can be used for session state storage? (Choose THREE.)
⚠ Common exam trap
Candidates may mistakenly think Amazon S3 can be used for session state due to its general-purpose storage capabilities, but S3's high latency for small, frequent writes makes it unsuitable for session management. Additionally, some candidates might overlook RDS, but relational databases are a very common (though less performant) destination for session state, especially during lift-and-shift migrations.
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 ElastiCache for Redis
Amazon ElastiCache for Redis (A) is correct because it is an in-memory data store that supports fast key-value session data with sub-millisecond latency and optional persistence, making it a standard choice for shared session state in Elastic Beanstalk applications. Amazon DynamoDB (B) is correct because it is a fully managed, highly available key-value NoSQL database that can store session tokens and attributes with consistent low-latency reads/writes at scale. Amazon RDS (E) is correct because a relational database such as MySQL, PostgreSQL, or SQL Server can persist session state in a table, and Elastic Beanstalk applications commonly use RDS for shared session storage. Amazon S3 (C) is not appropriate because it is object storage with eventual consistency characteristics and higher latency, not designed for frequent small session reads/writes. Amazon CloudFront (D) is a content delivery network that caches HTTP content at edge locations and does not provide writable session state storage.
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 ElastiCache for Redis
Why this is correct
Amazon ElastiCache for Redis is an excellent choice for session storage due to its in-memory, key-value data store capabilities. It provides sub-millisecond latency and high throughput, which are critical for quickly retrieving and updating user session data with every request. Its ability to scale horizontally and its robust feature set make it ideal for managing transient, high-access application state efficiently.
- ✓
Amazon DynamoDB
Why this is correct
Amazon DynamoDB is a fully managed, serverless NoSQL database that offers single-digit millisecond performance at any scale, making it highly suitable for storing web application session state. Its key-value data model aligns perfectly with session storage requirements, where session IDs map directly to session data. DynamoDB's automatic scaling, high availability, and durability ensure that session data is consistently accessible and resilient against failures.
- ✗
Amazon S3
Why it's wrong here
Amazon S3 lacks the low-latency, key-value access pattern required for session state, as its read-after-write consistency and HTTP-based API introduce delays unsuitable for per-request session retrieval. It is tempting because S3 is a durable, scalable object store often used for static assets or backups, and would be correct for storing large, infrequently accessed session snapshots or logs where millisecond response times are not critical.
- ✗
Amazon CloudFront
Why it's wrong here
Amazon CloudFront is a content delivery network (CDN) designed to cache and deliver static and dynamic web content closer to users, reducing latency. It is fundamentally a caching and distribution service, not a persistent data store for application session state. CloudFront lacks the writable, key-value storage mechanism and API required to manage individual user sessions, making it unsuitable for this purpose.
- ✓
Amazon RDS
Why this is correct
Amazon RDS (Relational Database Service) can certainly be used to store session data within a relational database, typically in a dedicated table with session IDs as primary keys. While it offers strong consistency and durability through its ACID properties, using a relational database for high-volume session management might introduce higher latency and operational overhead compared to specialized key-value stores. However, for applications with existing RDS dependencies or less stringent latency requirements, it remains a viable option.
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
Courseiva writes every DVA-C02 question from scratch — 1,135 in total, each with an explanation and a wrong-answer breakdown. None are copied from real exams or dumps. Learn why practice questions differ from exam dumps →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This DVA-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 DVA-C02 exam.