Nodes js AWS sdk是否自动处理速率限制和重新绑定,还是我需要在解析响应后尝试重试 [英] Does Nodes js AWS sdk automatically handles rate limiting and reties or do I need to attempt retry after parsing response

查看:69
本文介绍了Nodes js AWS sdk是否自动处理速率限制和重新绑定,还是我需要在解析响应后尝试重试的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要像这样处理吗?

ses.sendEmail( //body and other options
}, function (err, data) {
   if (err)
    //parse error and attmept to retry
});

或者只是通过像这样处理它来完成:

Or will it be done just by handling it like :

var ses = new aws.SES({apiVersion: apiVersion,maxRetries: 10});

推荐答案

AFAIK aws sdk不处理速率限制.使用此速率限制像这样包装您的ses.send的模块,

AFAIK aws sdk does not handle rate limiting. use this rate limiting module to wrap your ses.send like this,

var RateLimiter = require('limiter').RateLimiter;
// Allow 50 requests per second. Also understands
// 'second', 'minute', 'day', or a number of milliseconds
var limiter = new RateLimiter(50, 'second');

//huge number of requests
for (var i = 0; i < 10000; i++) {
//Throttle requests
  limiter.removeTokens(1, function (err) {
    if (err) throw err
    // err will only be set if we request more than the maximum number of
    // requests we set in the constructor
    // remainingRequests tells us how many additional requests could be sent
    // right this moment
    ses.sendEmail({
      //body and other options
    }, function (err, data) {
      if (err) throw err
      //parse error and attempt to retry

    })

  });
}

这篇关于Nodes js AWS sdk是否自动处理速率限制和重新绑定,还是我需要在解析响应后尝试重试的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆