用于管理ActiveMailer生成的队列的选项

时间:2018-09-05 13:07:08

标签: ruby-on-rails email

作为服务器上唯一的应用程序托管的应用程序,将为大量将启动邮件组的用户处理电子邮件。该应用程序进行的其他大多数处理不是很激烈。

尽管邮件量不会很大,但它们很重要≈每天成千上万。在涉及多个邮件收件人的操作之后,邮件通常将作为单独的项目发送;在单个项目之间以及邮件收件人的子组内将出现滞后。

换句话说,每封邮件都可以计算出应该发送的时间。

有多个用于处理队列的选项,我将其分为两类。 a)基于RAM的对象。这些缺点是如果服务器发生故障,则会丢失队列。 b)基于数据库的对象。这些需要更多处理。 (我只能想到一种机制,在该机制下,将邮件与它们的时间释放一起存储,并通过cron作业(调度程序gem)每分钟检查一次未释放的邮件,并且日期时间为<Time.now,将其发送并修改邮件“已发布”属性)

没有任何排队选项的经验,我的问题取决于您的经验,哪种选择和ActiveJob适配器(或非!)在给定上下文的情况下最有意义,同时又很复杂?

0 个答案:

没有答案