1時間あたりのサマリーメール送信数制限

要約メールの送信上限(1 時間以内)は調整可能ですか?
(英語が拙くて申し訳ありません)

ご参照いただいている内容が何のことかよくわかりませんが、サマリーメールの詳細や仕組みについては、Configuring Activity Summary emails をご覧ください。

おそらく、彼のメールプロバイダーは1時間あたりの送信可能メール数に制限を設けており、Discourseがその数を下回るように設定したいのでしょう。

同様の質問への回答はこちらです:How to set Email sending speed limit? - #2 by pfaffman

はい、@Jonathan5 さん、私もこれを聞いてほしかったです。共有ありがとうございます。この件については後で読みます。

はい、現在、Discourse のグローバル設定を使用してダイジェストメールの制限を簡単に設定できます。例えば、1 時間あたりのダイジェスト上限を 40 に設定するには、コンテナのビルドファイルで以下のように設定します。

DISCOURSE_MAX_DIGESTS_ENQUEUED_PER_30_MINS_PER_SITE: 20

ダイジェスト用のこの Discourse グローバル設定のデフォルト値は「30 分あたり 10,000」ですが、ユーザー数が非常に多い場合、大量のダイジェストが送信されてしまう可能性があります。

当サイトでは、有料プランの SendGrid を使用して月間約 10 万通のダイジェストを送信しています。そのため、以下のように設定を変更しています。

100,000 通 ÷ 30 日 ÷ 24 時間 ÷ 2(1 時間あたり)= 約 30 分あたり 60 通
この設定で円滑に動作しています。

関連情報:

注意:この変更にはコンテナの再ビルド(ブートストラップ)が必要となるため、変更前にご検討ください。

@neounix ありがとうございます。ユーザー数が多すぎてメールに問題が発生していました。自分でメールサーバーを購入しましたが、1 時間あたり 800 通という制限があり、それでも問題が続いていました。

@ozkn さん、どういたしまして!

Discourse のグローバル設定を「30 分あたり 400 件未満」に設定すれば、問題なく動作するはずです。

当サイトでは、私が作成した monkey-patch 対応のプラグインに基づき、「スタンドアロン SMTP チャネル」でダイジェストを実行しています。しかし、あなたは標準の「シングル SMTP チャネル」設定を使用しているため、当然ながらさらに低い値に設定する必要があるかもしれません。

リスクを避けるため、75に設定しました。これで月に108,000通のメールを送信できます。

月間のダイジェストメールの数です…

このグローバル設定はダイジェストにのみ適用されます。

:slight_smile:

@ozkn さん、こんにちは

蛇足ですが、お知らせします。

当社のメインの Discourse 環境では、EnqueueDigestEmails ジョブにモンキーパッチを適用し、ダイジェストジョブの実行間隔を Discourse の標準設定である 30 分ではなく、5 分ごとに設定しました。

これにより、当社のケースでは、グローバルなダイジェスト制限変数を 10 に設定し、30 分に 60 通送る代わりに、5 分ごとに 10 通のダイジェストを送信することが可能になりました。この方法には、私にとっては以下の「小さな利点」がありました。

  • 一度に 60 通(あるいは例を挙げれば 300 通)を送るよりも、10 通(あるいは 50 通)を送る方が負荷が軽減される。
  • 管理者のメール送信ログファイルが一目で読みやすくなる。
  • コンテナを再構築する際、ジョブは必ず「起動時」に実行されるため、この低い数値設定により、コンテナ再構築後の初期ジョブ実行時のダイジェスト送信数を大幅に抑えることができた(コンテナ再構築後の初期ジョブ実行を Discourse 設定でスキップする方法がわからなかったため)。

これらは非常に小さな利点ですので、このような主観的な小さなメリットのために、多くの人がダイジェストジョブにモンキーパッチを適用することを推奨するわけではありません。しかし、私は 30 分間隔よりも 5 分間隔のダイジェストジョブを好みます。数日間テストした結果、モンキーパッチは非常にうまく機能しているため、引き続き 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 様。

Discourse ではダイジェストメールのキューイング間隔を 30 分から 5 分に変更する機能が公式にはサポートされていないため、このモンキーパッチについてさらにサポートが必要な場合は、以下のトピックでご連絡ください。

現時点では、README ファイルやサイト設定を備えた「完成されたプラグイン」としては提供していませんが、将来的には間隔をプラグインのサイト設定として扱えるようにし、5 分にハードコーディングされないようにする可能性があります。