如何使用Queue Worker和`jobs'表每小时在Laravel中发送最多300封电子邮件?

时间:2019-07-17 13:07:15

标签: delayed-job laravel-5.7 email-notifications

我在'jobs'表中排队了电子邮件通知,并且Queue Worker永久运行。服务器每小时最多只能发送300封电子邮件,但是随着应用程序的增长,这很快将成为一个严重的问题。

只要我阅读了stackoverflow和其他资源,就没有一种简单的方法可以实现worker的这种行为。所以我需要比我聪明的人一些帮助:)

对此的解决方案将是这样(在我的情况下,一份工作= 1封电子邮件):

  • 用于调用“ php artisan queue:work --once”的任务计划程序应该在每个循环中发送一封电子邮件,但工作人员每次都必须加载,这样才会消耗更多的服务器资源。
  • 包含以前发送的电子邮件的时间的临时表,如果超过300,则重新计算新创建作业的延迟时间(如果我可以禁用自动删除成功发送的邮件,则可以代替temp表来实现)职位)。
  • 其他想法?

谢谢

0 个答案:

没有答案