Limite de e-mail de resumo enviado em 1 hora

O limite de número de e-mails de resumo que podem ser enviados em até 1 hora é ajustável?
(perdão pelo meu inglês ruim)

Não tenho certeza se entendi a que você está se referindo, mas veja Configuring Activity Summary emails para mais detalhes sobre os e-mails de resumo e como eles funcionam.

Provavelmente, seu provedor de e-mail permite apenas x e-mails por hora, e ele quer garantir que o Discourse envie menos que isso.

Aqui está uma resposta a uma pergunta semelhante: How to set Email sending speed limit? - #2 by pfaffman

Sim, @Jonathan5, eu queria perguntar isso. Obrigado por compartilhar. Vou ler o assunto.

Sim, isso pode ser facilmente configurado atualmente para e-mails de resumo usando uma configuração global do Discourse. Por exemplo, para definir o limite dos seus resumos para 40 por hora, você pode configurar isso no seu arquivo de build do container:

DISCOURSE_MAX_DIGESTS_ENQUEUED_PER_30_MINS_PER_SITE: 20

Essa configuração global do Discourse para resumos tem como padrão 10.000 a cada 30 minutos e, se você tiver um número enorme de usuários, isso pode enviar muitos resumos.

No nosso site, usamos o SendGrid (um plano pago) para enviar cerca de 100.000 resumos por mês, mais ou menos, então configuramos isso para:

100.000 dividido por 30 dias por mês, dividido por 24 horas por dia, dividido por 2 por hora, ou seja, aproximadamente: 60 resumos a cada 30 minutos, e isso tem funcionado sem problemas.

Veja também:

Nota: Isso requer uma reconstrução do container / bootstrap, então considere isso antes de fazer a alteração.

@neounix muito obrigado. Estava tendo um problema com e-mail porque tenho muitos usuários. Comprei meu próprio servidor de e-mail. Há um limite de 800 e-mails por hora. Ainda assim, eu continuava tendo problemas.

De nada, @ozkn!!

Basta definir essa configuração global do Discourse para menos de 400 a cada 30 minutos e você estará pronto.

Nós executamos resumos em um “canal SMTP independente” com base em um plugin que escrevi com algumas correções (monkey-patch); mas como você está executando a configuração padrão de “único canal SMTP”, pode ser necessário baixar ainda mais, naturalmente.

Não arrisquei, configurei para 75. Assim, enviamos 108.000 e-mails por mês.

Resumos de e-mails por mês…

Essa configuração global aplica-se apenas aos resumos.

:slight_smile:

Olá @ozkn

A propósito, só para avisar.

Fiz um monkey patch no Job EnqueueDigestEmails na nossa instalação principal do Discourse e configurei o intervalo do Job de resumo para a cada 5 minutos, em vez dos 30 minutos fixos padrão do Discourse.

Isso significou que, no nosso caso, pudemos definir a variável global de limitação de resumo para 10 e enviar 10 resumos a cada 5 minutos, em vez de 60 a cada 30 minutos. Isso me deu um número muito pequeno de “vantagens”, na minha opinião, ao fazer dessa maneira:

  • há menos carga ao enviar 10 em vez de 60 de uma vez (ou 50 em vez de 300, por exemplo).
  • o arquivo de log de e-mails enviados pelo administrador é mais fácil de ler de relance.
  • quando reconstruímos o container, o job sempre é executado “na inicialização”, então esse número menor mitigou a execução inicial do job de resumo para um valor muito menor (já que não consegui descobrir como configurar o Discourse para pular a execução inicial do job após a reconstrução do container).

Essas são vantagens muito pequenas, então não recomendo que a maioria das pessoas faça monkey patch no job de resumo por essa pequena vantagem subjetiva; mas prefiro um intervalo de job de resumo de 5 minutos em vez de 30 minutos, e após testar por alguns dias, o mp funciona muito bem, então vamos manter o intervalo de 5 minutos.

Só para avisar, como uma “coisa pequena” a considerar :slight_smile:

@neounix Obrigado pela sua sugestão. Onde exatamente posso fazer essa configuração?

Aqui está para você, @ozkn

GitHub - unixneo/discourse-neo-email-digest-monkey-patch: This plugin monkey patches the Discourse digest mailer job (EnqueueDigestEmails) · GitHub

Muito obrigado, @neounix

De nada, @ozkn

Se precisar de mais ajuda com esse monkey patch, já que alterar o intervalo de enfileiramento do digest mailer de 30 para 5 minutos não é suportado pelo Discourse, entre em contato comigo neste tópico:

Ainda não transformei esse patch em um “plugin polido” com um arquivo README e configurações do site, mas no futuro, posso tornar o intervalo uma configuração do site do plugin, para que não fique fixo em 5 minutos.