Como definir o limite de velocidade de envio de Email?

Olá, Josh!

Para os resumos, você pode limitar isso a 14 por segundo definindo essa variável global do Discourse para 420, conforme mostrado abaixo no seu arquivo de construção do contêiner:

 DISCOURSE_MAX_DIGESTS_ENQUEUED_PER_30_MINS_PER_SITE: 420

Isso não é “exatamente” o que você quer, mas está muito perto.

Como 14 por segundo (do seu post) multiplicado por 30 segundos = 420, essa configuração global limitará os resumos a cerca de 420 a cada 30 minutos, exatamente como o código “diz”:

Veja também:

Naturalmente, se seu canal SMTP estiver enviando outros e-mails, você precisará reduzir esse valor; ou pode configurar um canal diferente e separado para e-mails de resumo (como fazemos).

Nota: Essa configuração global é definida como 10.000 a cada 30 minutos por padrão; o que é um monte de resumos por hora, se você me perguntar ;). Por isso, definimos esse valor muito mais baixo para ter uma conta “razoável” da SendGrid a cada mês.

30 resumos a cada 30 minutos = 1.440 por dia, ou cerca de 43.200 por mês (porque estávamos enviando muitos resumos antes de fazer essa mudança há alguns dias). No próximo mês, vou aumentar isso para cerca de 60 resumos a cada 30 minutos, ou cerca de 86.400 resumos por mês, mais ou menos.

Espero que isso ajude.