2012-03-04 3 views
1

Мы используем SAS Amazon для отправки электронной почты, и это говорит о том, что наша максимальная скорость передачи составляет 5 в секунду.Amazon SES Max Send Rate

Что я не могу найти: Что произойдет, если мы отправим более 5 в секунду? Неужели они в очереди или их отклонили?

У нас есть список рассылки, в котором работает более 1000 человек, и все они пытаются отправить все за один раз (и для этой цели мы одобряем SAS для Amazon).

Вот код, я использую для отправки электронной почты:

namespace Amazon 
{ 
    public class Emailer 
    { 
     /// <summary> 
     /// Send an email using the Amazon SES service 
     /// </summary> 
     public static void SendEmail(String from, String To, String Subject, String HTML = null, String emailReplyTo = null, String returnPath = null) 
     { 
      try 
      { 
       List<String> to 
        = To 
        .Replace(", ", ",") 
        .Split(',') 
        .ToList(); 

       var destination = new Destination(); 
       destination.WithToAddresses(to); 

       var subject = new Content(); 
       subject.WithCharset("UTF-8"); 
       subject.WithData(Subject); 

       var html = new Content(); 
       html.WithCharset("UTF-8"); 
       html.WithData(HTML); 

       var body = new Body(); 
       body.WithHtml(html); 

       var message = new Message(); 
       message.WithBody(body); 
       message.WithSubject(subject); 

       var ses = AWSClientFactory.CreateAmazonSimpleEmailServiceClient("xxx", "xxx"); 

       var request = new SendEmailRequest(); 
       request.WithDestination(destination); 
       request.WithMessage(message); 
       request.WithSource(from); 

       if (emailReplyTo != null) 
       { 
        List<String> replyto 
         = emailReplyTo 
         .Replace(", ", ",") 
         .Split(',') 
         .ToList(); 

        request.WithReplyToAddresses(replyto); 
       } 

       if (returnPath != null) 
        request.WithReturnPath(returnPath); 

       SendEmailResponse response = ses.SendEmail(request); 

       SendEmailResult result = response.SendEmailResult; 
      } 
      catch (Exception e) 
      { 

      } 
     } 
    } 
} 

ответ

2

Я с тех пор узнал, ответ в том, что они отвергаются.

+2

Не могли бы вы бы узнать, где именно находились эта информация? – MatteoSp

+1

Нет, они этого не делают. Прочтите это: http://sesblog.amazon.com/post/Tx8YGT0YZ9SQLD/What-Happens-When-You-Reach-Your-Sending-Limits – cawecoy

+0

Они определенно не ставят их в очередь, вы получите сообщение об ошибке если вы превысите максимальную скорость передачи .... –

2

Я думаю, что запрос отклоняется, если мы пытаемся отправить больше сообщений в секунду, а затем допустимый лимит.

Я нашел это в SES Блог http://sesblog.amazon.com/post/TxKR75VKOYDS60/How-to-handle-a-quot-Throttling-Maximum-sending-rate-exceeded-quot-error

Когда вы звоните Amazon SES быстрее, чем максимальная выделенной скорости отправки, Amazon SES будет отклонить сверх лимита запросов с «Throttling - Максимальная скорость передачи превышена ".

Ошибка «дросселирование - максимальная скорость передачи». Эта ошибка отличается от других ошибок, возвращаемых SAS Amazon, таких как отправка с адреса электронной почты, который не проверен или отправлен на адрес электронной почты, который включен в черный список. Эти ошибки указывают, что запрос не будет принят в его текущей форме. Запрос, отклоненный с ошибкой «Дросселирование», может быть повторен позднее и, вероятно, будет успешным.

Если они будут ставить в очередь запросы, это будет отличным вариантом, но наш опыт в том, что они этого не делают. Пожалуйста, дайте мне знать, если я понимаю что-то не так.