Q26 — AWS SAA-C03 Ch.5
Question 26 of 65 | ← Chapter 5
Q326. A company has a serverless application on AWS that uses Amazon RDS as a backend database.The application sometimes experiences a sudden unpredictable increase in traffic. During traffic increases,the application frequently opens and closes connections to the database, which causes the application to receive errors from the database or run out of connections. The company needs to ensure that the application is always scalable and highly available.Which solution will meet these requirements WITHOUT any code changes to the application?
- A. Increase the maximum number of connections in the option group of the RDS database of the serverless application
- B. Increase the instance size of the RDS DB instance to meet the peak load traffic
- C. Deploy Amazon RDS Proxy between the serverless application and Amazon RDS ✓
- D. Purchase Reserved Instances for Amazon RDS to ensure that the database is highly available during peak load traffic
Correct Answer: C. Deploy Amazon RDS Proxy between the serverless application and Amazon RDS
Explanation
The solution that will meet the requirement of ensuring that a serverless application using Amazon RDS as a backend database is always scalable and highly available without any code changes to the application is option C: Deploy Amazon RDS Proxy between the serverless application and Amazon RDS. Amazon RDS Proxy is a fully managed, highly available database proxy that provides connection pooling, read/write splitting, and failover capabilities for RDS databases. In this scenario, deploying Amazon RDS Proxy between the serverless application and RDS can optimize database connections by reducing connection setup time and increasing connection reuse. This reduces the possibility of running out of connections or receiving errors from the database during traffic spikes. Additionally, Amazon RDS Proxy can help improve database availability by using multiple availability zones, automatic failover, and automatic scaling based on demand.Option A (increasing the maximum number of connections in the option group of the RDS database) may not be effective or optimal since it may still cause performance issues during traffic spikes. Increasing the maximum number of connections also does not address the issue of connection setup time. Option B (increasing the instance size of the RDS DB instance to meet the peak load traffic) may not be cost-effective and efficient since it involves overprovisioning resources that are only needed during peak traffic. Additionally, increasing the instance size may not solve all performance issues related to database connections.Option D (purchasing Reserved Instances for Amazon RDS to ensure high availability during peak load traffic) does not address the root cause of the problem, which is related to connection pooling and scalability. It may also not be cost-effective since Reserved Instances require upfront payments and long- term commitments.Therefore, the best solution in this scenario is to deploy Amazon RDS Proxy, which can provide connection pooling and read/write splitting capabilities, optimize database connections, and improve database availability without any code changes to the application.