区分cron作业/计划任务中的Symfony假脱机电子邮件类型

时间:2015-11-03 08:20:23

标签: php symfony email cron scheduled-tasks

我有一个Symfony应用程序,用户在注册/恢复密码时发送电子邮件。它使用FOSUserBundle这样做,但我已经覆盖了翻译并添加了我自己的翻译。电子邮件正在发送,但是从客户端的浏览器发送,我不想要的东西。

我已查看spooling,一切正常,电子邮件保存在文件中,运行命令时,电子邮件正在发送。

问题在于我有两种类型的电子邮件:

  • 即时电子邮件,必须立即发送,因为 需要立即提供信息:用户注册或恢复时 他的密码,他需要他的确认链接。还收到一个 我的应用程序内的私人消息可以发送消息通知他 更快。
  • 批量或群发电子邮件,例如当管理员向所有或某些用户群发送大量电子邮件时。一个cron工作会发送这些 每10分钟发10封电子邮件。

问题在于,无论它是什么电子邮件类型,它都会添加到假脱机中,如果cron作业刚刚运行,例如,注册的用户只会在大约10分钟后收到他们的电子邮件。

如果在那个时间跨度内,50个电子邮件被添加到假脱机,然后另一个用户要注册,他将在大约一个小时内收到他的电子邮件,因为他必须等待5个cron作业执行50封电子邮件之前执行他的。

解决方案是增加发送的电子邮件并缩短cron作业之间的时间,但仍然无法完全解决问题。

有没有办法让不同的假脱机电子邮件,或以某种方式区分电子邮件类型?

0 个答案:

没有答案