4

Amazon SESを使用してメールを送信していますが、最大送信速度は1秒あたり5です。

毎秒5回以上送信するとどうなるかわかりません。 彼らは待ち行列に入れますか、それとも拒否されますか?

1,000人を超える人が参加しているメーリングリストがあり、全員が一度にすべてを送信しようとします(この目的で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)
            {

            }
        }
    }
}
4

3 に答える 3

6

1秒あたりに許可されている制限を超えてメッセージを送信しようとすると、リクエストは拒否されると思います。

これはSESブログhttp://sesblog.amazon.com/post/TxKR75VKOYDS60/How-to-handle-a-quot-Throttling-Maximum-sending-rate-exceeded-quot-errorで見つかりました

割り当てられた最大送信レートよりも速くAmazonSESに電話をかけると、Amazon SESは「スロットル–最大送信レートを超えました」というエラーで制限を超えたリクエストを拒否します。

「スロットル–最大送信レートを超えました」エラーは再試行可能です。このエラーは、確認されていないEメールアドレスからの送信やブラックリストに登録されているEメールアドレスへの送信など、AmazonSESによって返される他のエラーとは異なります。これらのエラーは、リクエストが現在の形式で受け入れられないことを示しています。「スロットリング」エラーで拒否されたリクエストは、後で再試行でき、成功する可能性があります。

彼らがリクエストをキューに入れる場合、これは素晴らしいオプションですが、私たちの経験では、そうではありません。ここで何か間違っていることがわかったら教えてください。

于 2013-02-27T07:17:40.867 に答える
3

それ以来、答えは拒否されたということを知りました。

于 2012-03-28T16:11:10.080 に答える
1

1日の送信クォータ(24時間に送信できるメールの最大数)または最大送信レート(1秒あたりに送信できるメッセージの最大数)に達した後にメールを送信しようとすると、AmazonSESは低下しますメッセージであり、再配信を試みません

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

私はこの状況で立ち往生していて、解決するための最良の方法を見つける途中です。

于 2019-07-30T00:22:35.423 に答える