Free AWS SAP-C02 Actual Exam Questions - Question 3 Discussion
application layer consists of a single server running a stateful application. The application connects to
a PostgreSQL database running on a separate server. The application’s user base is expected to grow
significantly, so the company is migrating the application and database to AWS. The solution will use
Amazon Aurora PostgreSQL, Amazon EC2 Auto Scaling, and Elastic Load Balancing.
Which solution will provide a consistent user experience that will allow the application and database
tiers to scale?
It’s A. Sticky sessions are key, and the least outstanding requests algorithm helps balance load better. Using Aurora replicas scales reads without touching the writer, so it’s more reliable for growth.
B tbh, the app needs consistent handling of session state since it's stateful, so sticky sessions are a must. Aurora writers scaling is tricky because usually only one writer is active, so auto scaling writers might not be realistic. Using an Application Load Balancer makes sense here since it supports HTTP and sticky sessions better than a Network Load Balancer. Round robin routing combined with sticky sessions should distribute load while keeping user sessions consistent. So option B fits the requirements for stateful app scaling and consistent UX better than the others.
Option A also looks solid since Aurora Auto Scaling for replicas helps with read scaling, and the Network Load Balancer with sticky sessions can direct traffic efficiently. But NLB is typically better for TCP/UDP, not HTTP, so it might not handle session stickiness as smoothly as an ALB. Plus, least outstanding requests routing is good for balancing but may not maintain session consistency as well. So while A addresses scaling, the choice of load balancer could affect the user experience negatively compared to ALB in option C.
It’s C because Aurora Replicas handle read scaling well, and the Application Load Balancer supports sticky sessions needed for a stateful app. Network Load Balancer doesn’t manage HTTP sessions as effectively here.
Maybe C. Aurora Replicas help with reads and using an Application Load Balancer fits web apps well. Sticky sessions make sense for a stateful app. Option B throws me off by scaling writers-usually, read replicas scale better for load.