Максимальная скорость отправки Amazon SES

Мы используем Amazon SES для отправки электронных писем, и максимальная скорость отправки составляет 5 писем в секунду.

Чего я не могу понять, так это что произойдет, если мы отправим более 5 сообщений в секунду? Будут ли они стоять в очереди или будут отклонены?

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

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

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)
            {

            }
        }
    }
}

person Tom Gullen    schedule 04.03.2012    source источник


Ответы (3)


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

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

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

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

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

person Victor Smirnov    schedule 27.02.2013

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

person Tom Gullen    schedule 28.03.2012
comment
Не могли бы вы сказать, где вы нашли эту информацию? - person MatteoSp; 08.04.2013
comment
Нет, это не так. Прочитайте это: sesblog.amazon.com /post/Tx8YGT0YZ9SQLD/ - person cawecoy; 13.06.2013
comment
Они определенно не ставят их в очередь, вы получите сообщение об ошибке, если превысите максимальную скорость отправки.... - person JL.; 19.07.2013
comment
Неправильно - боюсь, они их отвергнут. См. этот пост в блоге Amazon SES, написанный Валентином Мунтяну... -quot-error" rel="nofollow noreferrer">sesblog.amazon.com/post/TxKR75VKOYDS60/ - person philwilks; 23.07.2013

Если вы попытаетесь отправить электронное письмо после достижения дневной квоты на отправку (максимального количества сообщений электронной почты, которые вы можете отправить за 24 часа) или максимальной скорости отправки (максимального количества сообщений, которые вы можете отправить в секунду), Amazon SES удаляет сообщение и не пытается повторно его доставить.

https://docs.aws.amazon.com/ses/latest/DeveloperGuide/reach-sending-limits.html

Я застреваю в этой ситуации и ищу наилучший способ решения.

person Minh Hoàng    schedule 30.07.2019