Q65 — AWS SAA-C03 Ch.10
Question 65 of 100 | ← Chapter 10
Q665. An ecommerce company runs its application on AWS. The application uses an Amazon Aurora PostgreSQL cluster in Multi-AZ mode for the underlying database. During a recent promotional campaign, the application experienced heavy read load and write load Users experienced timeout issues when they attempted to access the application.A solutions architect needs to make the application architecture more scalable and highly available. Which solution will meet these requirements with the LEAST downtime?
- A. Create an Amazon EventBridge rule that has the Aurora cluster as a source. Create an AWS Lambda function to log the state change events of the Aurora cluster. Add the Lambda function as a target for the EventBridge rule. Add additional reader nodes to fail over to
- B. Modify the Aurora cluster and activate the zero-downtime restart (ZDR) feature. Use Database Activity Streams on the cluster to track the cluster status
- C. Add additional reader instances to the Aurora cluster. Create an Amazon RDS Proxy target group for the Aurora cluster ✓
- D. Create an Amazon ElastiCache for Redis cache. Replicate data from the Aurora cluster to Redis by using AWS Database Migration Service(AWS DMS) with a write-around approach
Correct Answer: C. Add additional reader instances to the Aurora cluster. Create an Amazon RDS Proxy target group for the Aurora cluster
Explanation
To make the application architecture more scalable and highly available for the ecommerce company using an Amazon Aurora PostgreSQL cluster in Multi-AZ mode, the solution that will meet these requirements with the least downtime is:C. Add additional reader instances to the Aurora cluster. Create an Amazon RDS Proxy target group for the Aurora cluster.Here's the rationale behind this solution:Option C: Add additional reader instances to the Aurora cluster. Create an Amazon RDS Proxy target group for the Aurora cluster.Adding additional reader instances to the Aurora cluster allows for scaling the read capacity to handle heavy read loads during the promotional campaign. This helps alleviate the timeout issues experienced by users. Additionally, creating an Amazon RDS Proxy target group for the Aurora cluster enables efficient connection pooling and load balancing, further enhancing the scalability and availability of the application.Option A: Create an Amazon EventBridge rule that has the Aurora cluster as a source. Create an AWS Lambda function to log the state change events of the Aurora cluster. Add the Lambda function as a target for the EventBridge rule. Add additional reader nodes to failover to. While monitoring the state change events of the Aurora cluster can be useful for logging and troubleshooting purposes, it does not directly address the scalability and availability requirements. Adding additional reader nodes for failover can help with availability but may not be as effective in handling heavy read loads during the promotional campaign.Option B: Modify the Aurora cluster and activate the zero-downtime restart (ZDR) feature. Use Database Activity Streams on the cluster to track the cluster status. Enabling the zero-downtime restart feature and using Database Activity Streams for tracking the cluster status can improve resilience and monitoring capabilities but do not directly address the scalability and read load issues faced during the promotional campaign.Option D: Create an Amazon ElastiCache for Redis cache. Replicate data from the Aurora cluster to Redis using AWS Database Migration Service (AWS DMS) with a write-around approach. While using Amazon ElastiCache for Redis cache can help with caching and offloading read operations, setting up data replication from Aurora to Redis using AWS DMS introduces additional complexity and potential latency. It may not be the most optimal solution for handling heavy read loads with minimal downtime.Therefore, the most suitable solution to make the application architecture more scalable and highly available with the least downtime is to add additional reader instances to the Aurora cluster and create an Amazon RDS Proxy target group for the cluster (Option C). This approach provides scalability, efficient connection pooling, and load balancing, allowing the application to handle heavy read loads during the promotional campaign while maintaining high availability.