AWS node.js在失败的batchWrite()上自动重试

根据这个aws doc http://docs.aws.amazon.com/general/latest/gr/api-retries.html自动重试function是build立在aws sdk在我的情况node.js aws sdk。 我像这样configuration了DocumentClient对象:

var dynamodb = new AWS.DynamoDB.DocumentClient({region: 'us-west-2', retryDelayOptions: {base: 50}, maxRetries: 20});

但我仍然不能让它自动重试我。 我想要自动重试所有的UnprocessedItems。 你能指出我的错误在哪里吗?

谢谢

AWS客户端SDK都具有内置的重试机制,但是这些重试是在请求级别。 这意味着任何被服务器拒绝的具有500级错误的请求,或者在某些情况下,400级的限制错误将根据configuration的设置自动重试。

你所要求的是没有内置到SDK中的业务层重试行为。 UnprocessedItems集合包含由于各种原因被服务拒绝的项目,您必须编写自己的逻辑来处理这些项目。

retryDelayOptionsmaxRetriesmaxRetries上的选项。 DocumentClient必须通过设置DynamoDB服务进行configuration。

 var dynamodb = new AWS.DynamoDB({maxRetries: 5, retryDelayOptions: {base: 300} }); var docClient = new AWS.DynamoDB.DocumentClient({service : dynamodb});