DVA-C02 Question 387
Single answerAn e-commerce application running on AWS experiences high read traffic for product catalog data. The product information is stored in an Amazon RDS database. To improve performance and reduce database load, the development team wants to implement caching. Which is the BEST solution to achieve this while ensuring low latency and scalability?
- A
Use Amazon ElastiCache with Redis to cache frequently accessed product data.
- B
Enable read replicas for the Amazon RDS database and redirect read traffic to the replicas.
- C
Deploy an Amazon S3 bucket and store the product catalog data as static files.
- D
Use AWS Lambda to fetch and cache product data in-memory for each invocation.
Show answer and explanation
Correct answer: A
Explanation
Amazon ElastiCache with Redis provides an optimized, high-performance caching mechanism that reduces database load and improves application latency. It is specifically designed for scenarios requiring rapid access to frequently accessed data, making it the best choice for this use case.
- A. Correct.
This is the correct option. Amazon ElastiCache with Redis is a managed in-memory data store that provides low-latency and high-throughput caching. It's well-suited for caching frequently accessed product data and reducing database load.
- B. Incorrect.
While read replicas can help distribute read traffic, they do not provide the same low-latency performance as an in-memory cache like ElastiCache. Additionally, read replicas still query the database, which may not reduce the load as much as caching.
- C. Incorrect.
Using Amazon S3 to store product catalog data as static files is not suitable for scenarios requiring low-latency, dynamic caching. S3 is optimized for object storage, not caching.
- D. Incorrect.
AWS Lambda is not designed to act as a caching layer. Storing cached data in Lambda's ephemeral memory is neither scalable nor persistent across invocations.