这是在Laravel中一次发送多封邮件的好方法吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了这是在Laravel中一次发送多封邮件的好方法吗?相关的知识,希望对你有一定的参考价值。

我还在学习Laravel,需要一些建议......长话短说,我有一个小脚本应该在合同需要续订前15天向客户发送邮件。现在,代码确实有效。我们的客户名单相对较小。但是,我很好奇。这是一个很好的方式吗?它有效吗?使用数据库查询会更好吗?无论如何,这是代码......

    $hosting=hosting::where('id','>',0);
    $dateToday=date('Y-m-d');
    $inFifteenDays=date('Y-m-d', strtotime($dateToday. ' + 15 days'));
    $hosting=$hosting->whereDate('datum_obnove','<=',($inFifteenDays));
    $hosting=$hosting->whereDate('datum_obnove','>=',($inFifteenDays))->get();
    foreach ($hosting as $hosting) 
    {
        $dataForSending=array();
        $dataForSending= array(
            'klijent' =>$hosting['kontakt'] , 
            'domena' =>$hosting['naziv_domene'],
            'mail' =>$hosting['mail']  
        );
    Mail::to($dataForSending['mail'])->queue(new HostingMail($hosting));
    }

在此先感谢<3

答案

欢迎来到StackOverflow!

确实有a lot of factors into when it's worth optimizing code before you hit an issue,但看起来你已经在使用Laravel队列,这是一个很好的第一步。你至少能够监控你的队列(https://horizon.laravel.com/,如果你选择使用它),看看他们是否陷入困境或是否有问题。前一个建议需要你安装Redis

如果有问题,你可以修补rate limiting,以确保你的应用程序仍然处理性能很好。

这些建议现在仍然超越。我建议从你拥有的东西开始,监控性能,并在必要时使用上述建议。祝你好运!

以上是关于这是在Laravel中一次发送多封邮件的好方法吗?的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 在不使用 foreach 循环的情况下发送单独的多封邮件

如何一次发送多封电子邮件,每个电子邮件都带有一个 xlsx 文件附件?

电子邮件表单根据附件发送多封邮件

对多封电子邮件执行一次批处理脚本

使用 asp.net 发送 20,000 多封电子邮件

无法在多封电子邮件中重复使用电子邮件附件