요약 이메일 제한이 1시간 내로 발송됨

요약 이메일을 최대 1시간까지 보낼 수 있는 횟수 제한을 조정할 수 있나요?
(영어가 서툴러 죄송합니다)

무엇을 말씀하시는지는 정확히 이해가 되지 않지만, 요약 이메일에 대한 자세한 내용과 작동 방식은 Configuring Activity Summary emails 에서 확인하실 수 있습니다.

아마도 그의 이메일 제공업체가 시간당 x개의 이메일만 허용하고, Discourse가 그보다 적은 수의 이메일을 보내도록 하려는 것 같습니다.

유사한 질문에 대한 답변입니다: How to set Email sending speed limit? - #2 by pfaffman

네 @Jonathan5, 바로 이걸 물어보려 했어요. 공유해 주셔서 감사합니다. 내용을 읽어보겠습니다.

네, 현재는 Discourse 전역 설정을 사용하여 다이제스트 이메일의 수를 쉽게 설정할 수 있습니다. 예를 들어, 시간당 다이제스트 제한을 40개로 설정하려면 컨테이너 빌드 파일에 다음을 설정할 수 있습니다:

 DISCOURSE_MAX_DIGESTS_ENQUEUED_PER_30_MINS_PER_SITE: 20

이 Discourse 전역 설정은 기본적으로 30분당 10,000개로 설정되어 있으며, 사용자가 매우 많을 경우 상당한 양의 다이제스트가 발송될 수 있습니다.

저희 사이트에서는 SendGrid(유료 플랜)를 사용하여 월 100,000건의 다이제스트를 발송하고 있으며(오차 범위 포함), 따라서 이 값을 다음과 같이 설정했습니다:

100,000 ÷ 월 30일 ÷ 일 24시간 ÷ 시간당 2회, 즉 대략 30분당 60건의 다이제스트로 설정했으며, 잘 작동하고 있습니다.

참고:

참고: 이 변경 사항을 적용하려면 컨테이너 재빌드/부트스트랩이 필요하므로, 변경 전에 신중하게 고려해 주세요.

@neounix 정말 감사합니다. 사용자 수가 너무 많아서 이메일 관련 문제가 있었습니다.
직접 메일 서버를 구매했는데, 시간당 800통의 이메일 전송 한도가 있었습니다. 그래도 여전히 문제가 발생했습니다.

@ozkn 님, 기꺼이 도와드리겠습니다!!

Discourse의 전역 설정을 30분당 400통 미만으로 설정하면 문제가 해결될 것입니다.

저는 작성한 monkey-patch 플러그인을 기반으로 "독립적 SMTP 채널"에서 다이제스트를 실행하고 있습니다. 하지만 표준 “단일 SMTP 채널” 구성을 사용 중이므로, 당연히 더 낮은 값으로 설정해야 할 수 있습니다.

그렇게 무모하게 하지 않았습니다. 75로 설정했습니다. 이렇게 하면 한 달에 108,000통의 메일을 보낼 수 있습니다.

다이제스트가 한 달에 메일을 보내는데…

이 전역 설정은 다이제스트에만 적용됩니다.

:slight_smile:

@ozkn 님 안녕하세요.

참고로 알려드립니다.

저희 메인 Discourse 환경에서 EnqueueDigestEmails Job에 monkey patch를 적용하고, Digest Job 간격을 Discourse 기본(OOTB)으로 하드코딩된 30분이 아닌 5분마다 실행하도록 설정했습니다.

이로써 저희 경우 전역 Digest 제한 변수를 10으로 설정하여 30분마다 60개를 보내는 대신 5분마다 10개의 Digest를 발송할 수 있었습니다. 이렇게 하면 다음과 같은 몇 가지 제가 "장점"이라고 생각하는 작은 이점이 있었습니다:

  • 한 번에 60개(예를 들어 300개)를 보내는 것보다 10개(예를 들어 50개)를 보내는 것이 부하가 적습니다.
  • 관리자 이메일->발송 로그 파일을 한눈에 보기 더 쉽게 읽을 수 있습니다.
  • 컨테이너를 재빌드할 때 Job이 항상 "시작 시"에 실행되므로, 이 더 작은 수치는 컨테이너 재빌드 후 Job이 초기 실행될 때의 Digest 실행 수를 훨씬 더 작은 규모로 완화시켜 주었습니다(컨테이너 재빌드 후 Job의 초기 실행을 Discourse 설정에서 건너뛰는 방법을 찾지 못했기 때문입니다).

이것들은 매우 작은 이점들이므로, 대부분 사람들에게 이 작은 주관적 이점을 위해 Digest Job에 monkey patch를 적용하는 것을 권장하지 않습니다. 하지만 저는 30분 간격보다 5분 Digest Job 간격을 선호하며, 며칠간 테스트한 결과 monkey patch가 훌륭하게 작동하므로, 우리는 5분 간격을 유지하기로 했습니다.

일부 "작은 사항"으로 고려해 볼 수 있는 점을 알려드리기 위해 올립니다. :slight_smile:

@neounix 제안해 주셔서 감사합니다. 이 설정을 정확히 어디에서 변경할 수 있을까요?

여기 있습니다 @ozkn

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

정말 감사합니다 @neounix

@ozkn 환영합니다

Digest 메일러 큐잉 간격을 30분에서 5분으로 변경하는 것은 Discourse에서 지원되지 않으므로, 이 monkey patch에 대해 추가 도움이 필요하시다면 다음 주제에서 저에게 연락해 주세요:

아직 이 패치를 README 파일과 사이트 설정이 포함된 "polished plugin"으로 만들지 않았습니다. 하지만 미래에는 간격을 5분으로 하드코딩하지 않고 플러그인 사이트 설정으로 만들 수 있습니다.