An e-commerce application uses an Amazon RDS for MySQL Multi-AZ DB instance. During flash sales, CPU utilization on the database spikes to due to a massive influx of read queries for product catalog details, causing application timeouts. The catalog data is updated only once per day. Which architecture should a solutions architect recommend to resolve this performance bottleneck with the lowest latency?
- AMigrate the product catalog to an Amazon DynamoDB table using a partition key based on a monotonically increasing timestamp of the product upload to ensure sequential read performance.
- BConfigure RDS Read Replicas in the primary Availability Zone and configure the application to use the replica endpoints as the primary target for write traffic and disaster recovery failover during peak periods.
- Deploy an Amazon ElastiCache for Redis cluster in front of the RDS DB instance to cache product catalog queries, and configure the application to check the cache before querying the database.Cevap
- DMigrate the product catalog to an Amazon DynamoDB table configured with provisioned capacity mode to automatically scale and absorb the highly unpredictable and sudden spikes in read traffic.
Cevap
Deploying an Amazon ElastiCache for Redis cluster in front of the RDS DB instance to cache product catalog queries.
Caching the static product catalog in Amazon ElastiCache for Redis offloads the read traffic from the database, delivering microsecond response times and lowering CPU utilization to resolve the bottleneck.
Adım Adım Çözüm
Anahtar Kavram
Database Caching with Amazon ElastiCache
Tahmini Süre:1m 30s