The discussion explores whether Discourse’s 30-minute digest rate setting translates precisely into a per-second email sending rate. ToddZ expresses concern about switching to Emailit’s plan, which enforces a 2 emails-per-second limit, and questions how Discourse handles rate limits. RGJ clarifies that the digest job runs every 30 minutes and the rate limit setting only controls the maximum number of emails queued, not a strict per-second distribution. This means the system does not distribute the digest rate evenly across seconds, so a per-second limit could be exceeded. ToddZ acknowledges this and decides to avoid relays with per-second limits. supermathie suggests using a local Postfix instance to manage outgoing mail and handle rate limits more effectively, allowing fallback to paid services if needed.
Reviewing topics that ask about rate limiting / throttling digests and emails, the only available setting seems to be DISCOURSE_MAX_DIGESTS_ENQUEUED_PER_30_MINS_PER_SITE.
I don’t know if I should assume that the value for that is distributed exactly into an X-per-second rate.
And it’s only digests – I’d have to account for other surges like watching-first-post blasts, etc.
With the info I have, it doesn’t feel workable to use an SMTP service with a rate limit. Is there anything reassuring that I’ve missed?
The job that enqueues digests runs every 30 minutes, and all this setting does is put a maximum number of max_digests_enqueued_per_30_mins_per_site in the queue. It does not control how quickly the queue is processed.
BTW Seeing some pretty bad reviews for emailit recently, both on trustpilot and appsumo.
This will also ease the burden on your server since the relatively expensive operation of generating the email will only happen once, not over and over (if it gets rate limited).