Welcome to ExamTopics
ExamTopics Logo
- Expert Verified, Online, Free.
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 22 discussion

A software company has deployed an application that consumes a REST API by using Amazon API Gateway, AWS Lambda functions, and an Amazon DynamoDB table. The application is showing an increase in the number of errors during PUT requests. Most of the PUT calls come from a small number of clients that are authenticated with specific API keys.
A solutions architect has identified that a large number of the PUT requests originate from one client. The API is noncritical, and clients can tolerate retries of unsuccessful calls. However, the errors are displayed to customers and are causing damage to the API’s reputation.
What should the solutions architect recommend to improve the customer experience?

  • A. Implement retry logic with exponential backoff and irregular variation in the client application. Ensure that the errors are caught and handled with descriptive error messages.
  • B. Implement API throttling through a usage plan at the API Gateway level. Ensure that the client application handles code 429 replies without error.
  • C. Turn on API caching to enhance responsiveness for the production stage. Run 10-minute load tests. Verify that the cache capacity is appropriate for the workload.
  • D. Implement reserved concurrency at the Lambda function level to provide the resources that are needed during sudden increases in traffic.
Show Suggested Answer Hide Answer
Suggested Answer: B 🗳️

Comments

Chosen Answer:
This is a voting comment (?) , you can switch to a simple comment.
Switch to a voting comment New
masetromain
Highly Voted 1 year, 9 months ago
Selected Answer: B
API throttling is a technique that can be used to control the rate of requests to an API. This can be useful in situations where a small number of clients are making a large number of requests, which is causing errors. By implementing API throttling through a usage plan at the API Gateway level, the solutions architect can limit the number of requests that a client can make, which will help to reduce the number of errors. It's important that the client application handles the code 429 replies without error, this will help to improve the customer experience by reducing the number of errors that are displayed to customers. Additionally, it will prevent the API's reputation from being damaged by the errors.
upvoted 41 times
masetromain
1 year, 9 months ago
It is important to note that other solutions such as retry logic with exponential backoff and irregular variation in the client application or turn on API caching to enhance responsiveness for the production stage may help to improve the customer experience and reduce errors, but they do not address the root cause of the problem which is a large number of requests coming from a small number of clients. Implementing reserved concurrency at the Lambda function level can provide resources that are needed during sudden increases in traffic, but it does not address the issue of a client making a large number of requests and causing errors.
upvoted 15 times
...
...
zhangyu20000
Highly Voted 1 year, 10 months ago
B is correct. API gateway throttling is applied to single account - https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html. Retry will make it even worse.
upvoted 8 times
...
amministrazione
Most Recent 2 months, 1 week ago
B. Implement API throttling through a usage plan at the API Gateway level. Ensure that the client application handles code 429 replies without error.
upvoted 1 times
...
Ashu_0007
2 months, 3 weeks ago
API gateway throttling
upvoted 1 times
...
Jason666888
3 months ago
Selected Answer: B
Key word: a large number of the PUT requests, one client Seeing this will ring a bell on throttling on API Gateway. But normally you also need to make sure when the client side see "429 too many attempts", the app can capture that error code and show some reasonable error message(e.g. You have sent too many requests .Please try again later)
upvoted 2 times
...
gofavad926
7 months, 3 weeks ago
Selected Answer: B
B. C only will help with GET requests, and A and D don't prevent it
upvoted 1 times
...
anubha.agrahari
8 months ago
Selected Answer: B
https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
upvoted 1 times
...
duriselvan
8 months, 3 weeks ago
B ans : https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-request-throttling.html
upvoted 1 times
...
AimarLeo
9 months, 1 week ago
This question missing MASSIVE information.. none of the answers can fulfil the requirements..
upvoted 1 times
...
bjexamprep
9 months, 3 weeks ago
Selected Answer: A
There is no evidence indicating the problem is with the throughput. If it is throughput, other clients will have similar problem. And “the errors are displayed to customers and are causing damage to the API’s reputation.”, this means the solution should be able to reduce the error message showed on the client side, while, throttling the client will actually close the service for this particular client, which is against the “clients can tolerate retries of unsuccessful calls”. I vote A for this question.
upvoted 1 times
...
sarfaraz_khan
10 months, 3 weeks ago
The solutions architect should recommend option B: Implement API throttling through a usage plan at the API Gateway level. Ensure that the client application handles code 429 replies without error. Option B is the most directly related recommendation to improving the customer experience, as it addresses the issue of API rate limiting and ensures a more predictable and controlled experience for users.
upvoted 1 times
...
atirado
10 months, 3 weeks ago
Selected Answer: B
Option A - This option will make retries take longer on each retry for all clients rather than for the few causing issues in the application Option B - This option will work: An usage plan will allow throttling requests from specific clients identified by their API Key and ensuring client applications can handle throttling errors provides a consistent experience Option C - This option has no relation with the problem at hand Option D - This option assumes there is a capacity issue managing the increase in volumes but given that errors occur due to a small number of clients then reserved concurrency will not address the cause of the issue
upvoted 2 times
...
atirado
10 months, 3 weeks ago
Selected Answer: B
Option A - This option will make retries take longer on each retry for all clients rather than for the few causing issues in the application Option B - This option will work: An usage plan will allow throttling requests from specific clients identified by their API Key and ensuring client applications can handle throttling errors provides a consistent experience Option C - This option has no relation with the problem at hand Option D - This option assumes there is a capacity issue managing the increase in volumes but given that errors occur due to a small number of clients then reserved concurrency will not address the cause of the issue
upvoted 1 times
...
ninomfr64
10 months, 3 weeks ago
Selected Answer: B
Usage Plan throttling prevents a group of users or a single user to saturate the API concurrency capacity. Thus B. Also A and D can help in this scenario, but they will have less benefit with respect to B. While C does not help in this scenario as I do not see how API Gateway caching can help PUT requests
upvoted 1 times
...
severlight
12 months ago
Selected Answer: B
obvious
upvoted 1 times
...
whenthan
1 year, 2 months ago
Selected Answer: B
Implementing API throttling through a usage plan at the API Gateway level would directly address the issue of too many requests from a single client causing errors. Properly handling status code 429 can help clients understand the situation, and throttling ensures fair usage and prevents overload, ultimately improving the customer experience.
upvoted 1 times
...
bur4an
1 year, 2 months ago
Selected Answer: B
B. Implement API throttling through a usage plan at the API Gateway level. Ensure that the client application handles code 429 replies without error. Options A and D might help with general improvements in resilience and resource allocation, but they do not specifically address the issue of a single client causing a large number of errors. Option C, involving API caching, is not the most appropriate solution in this scenario, as caching might not directly address the issue of the client generating a high volume of errors. It might improve responsiveness for frequently accessed data, but it doesn't directly address the issue of client errors.
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 ...