Correct answer - "Use Exponential Backoff for retries" : Each AWS SDK implements exponential
backoff algorithm for better flow control. The idea behind exponential backoff is to use
progressively longer waits between retries for consecutive error responses. You should implement
a maximum delay interval, as well as a maximum number of retries. The maximum delay interval and
maximum number of retries are not necessarily fixed values, and should be set based on the
operation being performed, as well as other local factors, such as network latency. With
PutMetricAlarm you are allowed 3 transactions per second (TPS) which is the maximum number of
operation requests you can make per second without being throttled. You can also request an
increase of the limit by contacting AWS support.
Incorrect:
"Use Kinesis Stream" - You would want to use Amazon Kinesis Data Streams to collect and process
large streams of data records in real time
"Check IAM policy" - Requests that receive server (5xx) or throttling errors would benefit from
Exponential Backoff for retries, however errors due to access denied or authorization would
require you to check your IAM policy
"Enable high throughput metrics in CloudWatch" - There is a high-resolution metric for CloudWatch
where it stores it with a resolution of 1 second, and you can read and retrieve it with a period
of 1 second, 5 seconds, 10 seconds, 30 seconds, or any multiple of 60 seconds
For more information visit