SAP-C02 Practice Question: Accelerate Workload Migration and Modernization
A company is migrating a web application from on-premises to AWS. The application consists of a stateless web tier and a stateful application tier that stores session data in a local file system. The company wants to use AWS Elastic Beanstalk for both tiers. During a test migration, the development team notices that users are being logged out intermittently. The application tier is configured with two EC2 instances behind an internal load balancer. What should the development team do to resolve the issue?
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
✓
Move session storage to Amazon ElastiCache for Redis and configure the application to use it.
The issue is that session data is stored locally on each application instance. When traffic is distributed by the internal load balancer, subsequent requests from the same user may go to a different instance, losing the session data. The best practice is to use a centralized session store like Amazon ElastiCache for Redis. This ensures session data persists across all instances. Option A (sticky sessions) would cause load imbalance and is not recommended for high availability. Option C does not address session storage. Option D (DynamoDB) is possible but not as performant for session storage and requires more custom code; Redis is the recommended service for session management.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✗
Enable sticky sessions (session affinity) on the application tier's load balancer.
Why it's wrong here
Sticky sessions can cause load imbalance and are not a long-term solution.
- ✓
Move session storage to Amazon ElastiCache for Redis and configure the application to use it.
Why this is correct
ElastiCache provides a centralized, fast session store that works across instances.
- ✗
Increase the number of instances in the web tier to reduce the load on the application tier.
Why it's wrong here
Scaling web tier does not address session state loss.
- ✗
Store session data in Amazon DynamoDB.
Why it's wrong here
DynamoDB is not optimized for session storage; requires custom implementation.
Visual reference
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
One of 1,660 original SAP-C02 practice questions on Courseiva, each with a full explanation and wrong-answer analysis — not exam dumps or protected exam content. Learn why practice questions differ from exam dumps →
Same concept, more angles
1 more way this is tested on SAP-C02
These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.
Variation 1. A company is migrating a multi-tier web application to AWS. The application consists of a stateless web tier and a stateful application tier that uses sticky sessions. The company wants to reduce operational overhead and improve elasticity. Which architecture should the solutions architect recommend?
medium- ✓ A.Use an Application Load Balancer with sticky sessions for the web tier. Store session data in Amazon ElastiCache.
- B.Use Amazon CloudFront with an origin load balancer and store session data in the web tier's local storage.
- C.Use an Application Load Balancer with cross-zone load balancing and store session data in Amazon DynamoDB.
- D.Use a Network Load Balancer with instance targets and Amazon EFS to share session data.
Why A: Using an Application Load Balancer (ALB) with sticky sessions (session affinity) enables the web tier to be stateless and scale horizontally. The application tier can use ElastiCache for session state storage, making it stateless as well. This reduces overhead and improves elasticity. NLB with EFS is not suitable for session state; ALB with DynamoDB is overkill; CloudFront does not support sticky sessions.
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
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.