群发邮件队列(可能与PHP进程间通信)

时间:2011-08-31 12:42:47

标签: php

我正在建立一个用户可以发送简报的网站。他们需要跟踪发送过程,并在需要时停止发送过程。由于他们可能有很多电子邮件,因此实际发送将被委托给一个脚本,该脚本将在后台运行并由用户执行。该脚本将处理所有用户的新闻简报,只有它的参数不同。

为了让用户能够看到已发送了多少邮件并停止发送过程,我正在考虑在网站和后台运行的脚本之间实现某种进程间通信,但我不知道如何这样做。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:3)

过程:

  1. 发送简报时,将所有目标地址排在表格中。
  2. 在每隔几分钟运行一次的cronjob中处理一个固定数量的队列。
  3. 然后,当显示已发送的金额时,只计算队列中已处理的条目数量。

    使用队列时,还可以解决当每个人同时点击“发送”时脚本遇到的任何性能问题。

    停止邮寄

    如果客户希望停止邮寄,则只需删除邮件匹配的所有队列电子邮件。如果您想保留数据,也可以将它们标记为“已取消”。 (您必须确保您的队列仅处理来自队列的“待处理”邮件。)