通过 Redis 简单消息队列发送邮件

Sending email through Redis Simple Message Queue

我必须在我的应用程序中向 10 个用户发送电子邮件,但我必须分别向他们发送电子邮件。我正在使用环回框架并用于发送电子邮件和 rsmq

我有两种发送电子邮件的方法

Approach 1

我应该将一组电子邮件传递给队列生成器中的一条消息,而在队列侦听器中我应该迭代该电子邮件数组并逐一发送电子邮件

Approach 2

我应该在队列生成器中为每个用户发送单独的消息以发送电子邮件

哪种方法更好,为什么?

在消息队列中,最好将一个可处理条目作为一条消息发送到队列。

原因:

  • 如果您将电子邮件发件人拆分为多个功能,例如在发送电子邮件后,您需要更新一些日志,更新电子邮件计数或其他任何内容(其他示例可能很适合解释),那么每封电子邮件都需要由不同的功能独立进行。

为什么不这样做的原因:

  • 在批处理的情况下,您可能需要维护每条消息的电子邮件数量,这超出了您需要编写逻辑来拆分成 batchee

  • 中间一封邮件处理失败可能无法发送同一封邮件中的其余邮件。