在重试因 ProvisionedThroughputExceededException 而失败的请求时,标准 AmazonDynamoDBClient 是否使用指数回退?
Does the standard AmazonDynamoDBClient use exponential back off when retrying requests that failed due to a ProvisionedThroughputExceededException?
我使用 AmazonDynamoDBClientBuilder
创建了一个标准 AmazonDynamoDBClient
:
AmazonDynamoDBClient client = AmazonDynamoDBClientBuilder.standard().build();
在 documentation for the AmazonDynamoDBClient 中提到:
ProvisionedThroughputExceededException
- Your request rate is too
high. The AWS SDKs for DynamoDB automatically retry requests that
receive this exception. Your request is eventually successful, unless
your retry queue is too large to finish. Reduce the frequency of
requests and use exponential backoff.
在重试由于 ProvisionedThroughputExceededException
而失败的请求时,标准客户端是否默认使用指数退避?或者这是我需要手动配置的东西吗?
Error Retries and Exponential Backoff 的 AWS 文档提到了这一点:
The AWS SDKs implement automatic retry logic and exponential backoff.
Java 的默认 DynamoDB 重试策略可以在源代码中找到:PredefinedRetryPolicies.java
我使用 AmazonDynamoDBClientBuilder
创建了一个标准 AmazonDynamoDBClient
:
AmazonDynamoDBClient client = AmazonDynamoDBClientBuilder.standard().build();
在 documentation for the AmazonDynamoDBClient 中提到:
ProvisionedThroughputExceededException
- Your request rate is too high. The AWS SDKs for DynamoDB automatically retry requests that receive this exception. Your request is eventually successful, unless your retry queue is too large to finish. Reduce the frequency of requests and use exponential backoff.
在重试由于 ProvisionedThroughputExceededException
而失败的请求时,标准客户端是否默认使用指数退避?或者这是我需要手动配置的东西吗?
Error Retries and Exponential Backoff 的 AWS 文档提到了这一点:
The AWS SDKs implement automatic retry logic and exponential backoff.
Java 的默认 DynamoDB 重试策略可以在源代码中找到:PredefinedRetryPolicies.java