Which actions should a solutions architect take to resolve these performance issues?
(Choose two.)
Enable auto scaling for the DB instance.
Create a read replica for the DB instance. Configure the application to send read traffic to the read replica.
Enable Multi-AZ for the DB instance. Configure the application to send read traffic to the standby DB instance.
Create an Amazon ElastiCache cluster. Configure the application to cache query results in the ElastiCache cluster.
Configure the Auto Scaling group subnets to ensure that the EC2 instances are provisioned in the same Availability Zone as the DB instance.
Explanations:
Auto scaling for the DB instance is not supported for Amazon RDS. While it allows for vertical scaling by changing instance types, it does not dynamically adjust capacity based on load.
Creating a read replica allows the application to offload read traffic from the primary database, improving performance during high traffic periods. The application can be configured to route read requests to the read replica, reducing the load on the primary DB instance.
Enabling Multi-AZ provides high availability by replicating the database to a standby instance in a different Availability Zone, but it does not help with read scalability since read traffic cannot be directed to the standby instance.
Implementing an Amazon ElastiCache cluster can significantly enhance application performance by caching frequently accessed data, thereby reducing the load on the RDS instance and improving response times for read operations.
While provisioning EC2 instances in the same Availability Zone as the RDS instance can reduce latency, it does not address the issue of read load on the database. The primary performance improvement comes from scaling the database or using caching mechanisms.