exam questions

Exam AWS Certified Solutions Architect - Professional SAP-C02 All Questions

View all questions & answers for the AWS Certified Solutions Architect - Professional SAP-C02 exam

Exam AWS Certified Solutions Architect - Professional SAP-C02 topic 1 question 392 discussion

A car rental company has built a serverless REST API to provide data to its mobile app. The app consists of an Amazon API Gateway API with a Regional endpoint, AWS Lambda functions, and an Amazon Aurora MySQL Serverless DB cluster. The company recently opened the API to mobile apps of partners. A significant increase in the number of requests resulted, causing sporadic database memory errors.

Analysis of the API traffic indicates that clients are making multiple HTTP GET requests for the same queries in a short period of time. Traffic is concentrated during business hours, with spikes around holidays and other events.

The company needs to improve its ability to support the additional usage while minimizing the increase in costs associated with the solution.

Which strategy meets these requirements?

  • A. Convert the API Gateway Regional endpoint to an edge-optimized endpoint. Enable caching in the production stage.
  • B. Implement an Amazon ElastiCache for Redis cache to store the results of the database calls. Modify the Lambda functions to use the cache.
  • C. Modify the Aurora Serverless DB cluster configuration to increase the maximum amount of available memory.
  • D. Enable throttling in the API Gateway production stage. Set the rate and burst values to limit the incoming calls.
Show Suggested Answer Hide Answer
Suggested Answer: B 🗳️

Comments

Chosen Answer:
This is a voting comment (?). It is better to Upvote an existing comment if you don't have anything to add.
Switch to a voting comment New
vibzr2023
Highly Voted 1 year, 3 months ago
Option A is correct While A and B do the job but the question says "minimizing the increase in costs associated with the solution".. I'll go with A coz Edge-optimized endpoints cache responses at edge locations closer to users, significantly reducing the number of requests reaching the database and Lambda functions.. While Option B -- While ElastiCache for Redis a good caching solution, it adds complexity and cost compared to edge caching.
upvoted 10 times
...
career360guru
Highly Voted 1 year, 3 months ago
Selected Answer: A
Option A because B is more expensive than A
upvoted 10 times
...
874def1
Most Recent 1 week, 6 days ago
Selected Answer: B
A - can work but will terminate the request at the Cache. Problem is due to DB read load and this is indirect way to reduce DB read load. B- Best option because will be guaranteed to reduce DB read load C is bad option because it will permanantly increase the cost and cause downtime and still wont guarantee improved READ load. D -Throttling will spoil the consumer experience and cause damage to the business Problem states that the DB is experiencing memory issues due to read queries. I would go for read replicas but that is not an option available. This means, we go with caching. It will help to reduce interaction with the DB in this case rather than reducing interaction with the entire stack. In other words, i would choose to have the cache as close as possible to the DB layer.
upvoted 1 times
...
sergza888
3 weeks, 3 days ago
Selected Answer: D
Why it is not D. Question mentions Sporadic requests for short period of time. it is good to implement throttling to reduce error rates. Question does not ask about cache/performance. Besides it could be all new requests so cache would not necessary help
upvoted 1 times
...
eesa
1 month ago
Selected Answer: B
Eliminates redundant database queries: Since multiple HTTP GET requests query the same data in a short period, caching the results in ElastiCache for Redis significantly reduces load on Aurora Serverless. Improves performance: Redis provides low-latency access to frequently requested data, ensuring fast responses. Reduces costs: By offloading queries from Aurora, this minimizes the need for additional database memory or scaling. Handles traffic spikes effectively: Redis stores precomputed results, which helps in managing high traffic surges during peak hours.
upvoted 1 times
...
Deztroyer88
1 month, 1 week ago
Selected Answer: B
Option A is for mostly for latency and doesn't reduce the load on the DB.
upvoted 1 times
...
deepakR20
3 months, 2 weeks ago
Selected Answer: A
Option A
upvoted 1 times
...
ollyone
3 months, 3 weeks ago
Selected Answer: B
Option B
upvoted 1 times
...
henrikhmkhitaryan59
4 months, 2 weeks ago
Selected Answer: A
Taking cost as the primary focus and assuming simple edge caching will suffice, Option A is the better choice.
upvoted 1 times
...
Spike2020
4 months, 2 weeks ago
Selected Answer: A
API Gateway caching reduces database load by serving repeated requests Caching is ideal for handling identical GET requests Edge-optimized endpoints improve performance for distributed users No code changes required
upvoted 1 times
...
alexbraila
4 months, 3 weeks ago
Selected Answer: A
The exact same question is here: https://repost.aws/questions/QU4xZPFTZ3TASRtyDteJBM7Q/amazon-elasticache-vs-api-gateway-edge-optimized-endpoint I am voting for A, but I am still not convinced
upvoted 1 times
alexbraila
4 months, 3 weeks ago
And, indeed, as mentioned by asquared16, Neal Davis has a similar question in one of his exams and he also picked A. Overall explanation An edge-optimized API endpoint is best for geographically distributed clients. API requests are routed to the nearest CloudFront Point of Presence (POP). For mobile clients this is a good use case for this type of endpoint. The Regional endpoint is best suited to traffic coming from within the Region only. You can enable API caching in Amazon API Gateway to cache your endpoint's responses. With caching, you can reduce the number of calls made to your endpoint and also improve the latency of requests to your API. Why not B: This will increase costs associated with the solution as the ElastiCache cluster could be expensive.
upvoted 1 times
...
...
AzureDP900
5 months, 1 week ago
ption B (using ElastiCache for Redis) provides a more targeted solution that specifically addresses the issue of frequent requests and database memory errors. By caching frequently accessed data in ElastiCache, you can reduce the load on the Aurora Serverless DB cluster and improve performance.
upvoted 1 times
AzureDP900
5 months, 1 week ago
*Option B
upvoted 1 times
...
...
0b43291
5 months, 1 week ago
Selected Answer: B
Both options have their merits and can potentially address the issue to some extent. However, Option B (ElastiCache for Redis cache) is generally considered a more robust and targeted solution for caching database query results and addressing the root cause of redundant queries. If the application data is highly dynamic or personalized, and cache invalidation is a significant concern, Option B may be the preferred choice, as it allows for more granular control over the caching logic within the application code. Ultimately, the decision may depend on factors such as the nature of the data, the complexity of the caching requirements, the team's familiarity with the technologies involved, and the overall architectural preferences of the organization.
upvoted 1 times
...
sashenka
6 months ago
Selected Answer: A
Option A: Edge-Optimized Endpoint with API Gateway Caching This is the most suitable solution because: API Gateway caching can store frequently accessed query results at edge locations, reducing latency and database load14 Edge-optimized endpoints serve responses from locations closer to clients, improving performance4 It's more cost-effective compared to implementing ElastiCache or increasing database resources4 The pricing for HTTP API requests is very economical at $1 per million requests for the first 300 million1
upvoted 1 times
...
JoeTromundo
6 months, 2 weeks ago
Selected Answer: B
For those who are saying that option A is the correct one, why should API Gateway Regional Endpoint be converted to Edge-Optimized Endpoint, if caching can be enabled on either? Also, Between the two options, Option B tends to have a lower cost increase in the long term, especially because ElastiCache allows for more direct control over costs and can be adjusted to meet demand. Option A may result in significant data transfer costs, as switching to an Edge-Optimized endpoint involves CloudFront usage costs, which can increase rapidly as traffic grows. Therefore, if the goal is to minimize the increase in costs, Option B (using ElastiCache for Redis) is likely the best choice.,
upvoted 4 times
...
asquared16
8 months, 1 week ago
Selected Answer: A
Well, I'm convinced with B too, but apparently Neal Davis chose A in one of his exams so..
upvoted 3 times
...
Zas1
11 months, 1 week ago
Selected Answer: B
Minimizing is not the most cheaper.
upvoted 2 times
...
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.

Upvoting a comment with a selected answer will also increase the vote count towards that answer by one. So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.

SaveCancel
Loading ...
exam
Someone Bought Contributor Access for:
SY0-701
London, 1 minute ago