SAA-C03 Exam QuestionsBrowse all questions from this exam

SAA-C03 Exam - Question 268


A gaming company has a web application that displays scores. The application runs on Amazon EC2 instances behind an Application Load Balancer. The application stores data in an Amazon RDS for MySQL database. Users are starting to experience long delays and interruptions that are caused by database read performance. The company wants to improve the user experience while minimizing changes to the application’s architecture.

What should a solutions architect do to meet these requirements?

Show Answer
Correct Answer: A

To improve the application's read performance and minimize changes to the existing architecture, using Amazon ElastiCache in front of the database is the best approach. ElastiCache can cache frequently accessed data, significantly reducing the load on the database and improving read performance. This solution allows the application to retrieve data faster by accessing the cache instead of hitting the database for every read operation, thus enhancing the user experience. While the data may be dynamic, ElastiCache manages updates effectively to ensure consistency and freshness of the data when necessary.

Discussion

17 comments
Sign in to comment
Steve_4542636Option: A
Mar 2, 2023

Rds proxy is for too many connections, not for performance

Yadav_Sanjay
May 17, 2023

Can't use cache as score gates updated. If data would have been static then definitely can go with A. But here score is dynamic...

rfelipem
May 31, 2023

Users are starting to experience long delays and interruptions caused by the "read performance" of the database... While the score is dynamic, there is also read activity in the DB that is causing the delays and outages and this can be improved with Elastic Cache.

vipyodha
Jun 23, 2023

to use elasticache , you need to perform heavy code change ,aand also elasticache do chaching that can improve read perfromance but will not provide scalability

pentium75
Jan 7, 2024

We should "minimize", not "avoid", code changes.

chickenmf
Mar 18, 2024

minimize *architectural changes, NOT code changes

Mkenya08
Jan 30, 2024

ElastiCache stores data in memory, which means it may not always have the most up-to-date information. This might be acceptable for certain use cases where slightly stale data is acceptable, but for applications like gaming scores, real-time accuracy is often crucial.

Maru86
Feb 20, 2024

“Data in the cache is never stale. Because the data in the cache is updated every time it's written to the database, the data in the cache is always current and updated whenever data is written to the database.” https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/Strategies.html#Strategies.WriteThrough

JackyCCK
Apr 4, 2024

RDS Proxy: It helps applications improve scalability and performance by managing database connections and pooling, which can significantly reduce the load on the database

kraken21Option: B
Mar 31, 2023

RDX proxy will :"improve the user experience while minimizing changes".

pentium75
Jan 7, 2024

.. but not address issues with "database read performance".

bujumanOption: A
Mar 1, 2024

A will be the best option regarding read performance and based on following link: https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/creating-elasticache-cluster-with-RDS-settings.html

UzbekistanOption: B
Mar 27, 2024

RDS Proxy: It helps applications improve scalability and performance by managing database connections and pooling, which can significantly reduce the load on the database. By using RDS Proxy, you can offload connection management tasks from your application and optimize database access, thereby improving read performance without making significant changes to the application's architecture. Minimizing Changes: Implementing RDS Proxy does not require architectural changes to the application. It works as a proxy layer between the application and the RDS database, so the application code remains unchanged. This minimizes the effort and risk associated with making modifications to the application.

MandAshOption: A
Jun 3, 2024

Elasticache - reduce load due to read operations RDS proxy - reduce load due to lot of connections Here problem is read operations thus A is solution

MoshiurGCP
Feb 25, 2024

The discussion is really helpful thanks everyone.

TheFivePipsOption: B
Feb 26, 2024

A. Use Amazon ElastiCache in front of the database: Caching frequently accessed data in ElastiCache can help reduce the load on the database and improve read performance. However, it's essential to note that while ElastiCache can significantly enhance read performance by serving frequently accessed data from memory, it might not entirely eliminate long delays and interruptions if the root cause is related to the database itself or if the caching strategy is not effectively implemented. B. Use RDS Proxy between the application and the database: Helps improve database connection management, reducing the number of open connections to the database and enhancing overall performance. RDS Proxy handles connection pooling, which means it can efficiently manage and reuse database connections, reducing the overhead of establishing new connections for each query. It supports features like read/write splitting, which directs read queries to read replicas, further distributing the load.

TheFivePips
Feb 26, 2024

In this scenario, game scores are updated frequently so caching seems less useful than a proxy

alawada
Mar 20, 2024

Selected Answer: A ElastiCache stores data in memorY RESOLVE THE READING Issue

osmkOption: A
Mar 30, 2024

https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/Welcome.html

rjjkcOption: B
May 17, 2024

B - "Use RDS Proxy between the application and the database." B because it improves the user experience while minimizing the changes. If A is used, you have to modify your application to get the data from the cache first, if it is not there, then get from db; and also to invalidate the cache if there is a db update.

hb0011Option: A
May 26, 2024

I vote for Elasticache

rohitphOption: B
Jun 8, 2024

ask is - minimum changes. RDS Proxy is a feature of Amazon RDS. This would be easiest option to try.

sumpatil
Jun 12, 2024

A Caching frequently accessed data: ElastiCache can be used to reduce the load on your database by caching frequently accessed data. This can improve application performance and reduce the number of read queries to your database. Real-time applications: If your application requires real-time data processing, ElastiCache can help. Since it provides sub-millisecond response times, it can be used to power applications like gaming leaderboards, chat applications, and real-time analytics.

MomenAWSOption: A
Jun 13, 2024

Another vague question from AWS: I would prefer A over B

Manjeet_KumarOption: A
Jun 27, 2024

Not B because this can help with connection management and improve scalability and availability but won't directly address read performance issues caused by high read traffic.

Mayank0502Option: B
Jun 28, 2024

answer should be B

ChymKuBoyOption: A
Jul 4, 2024

A for sure