【问题标题】:trigger queue jobs without waiting sending email in Laravel v4.2在 Laravel v4.2 中触发队列作业而无需等待发送电子邮件
【发布时间】:2017-09-29 12:16:05
【问题描述】:

我正在处理用户注册任务,我的目标是在用户注册 30 分钟后发送欢迎电子邮件但我不知道这个过程将如何工作,因为每次我收到队列中的总作业数是 1。 以下是我在队列中注册用户和推送作业的方法,但我不想等到电子邮件发送。

public function register_process($inuts){
    if(User::insert($inuts)){
        $date = Carbon::now()->addMinutes(15);
        Queue::later($date, 'HomeController@testQueueJobs', array('message' =>$inuts['message']));
}}

public function testQueueJobs($job,$data){
        echo 'Total Jobs In Queue:'.count($job);die;
}

现在我很困惑,在成功注册用户而不发送电子邮件后,这项工作将如何执行。 请提供帮助或参考任何有用的演示链接。

【问题讨论】:

    标签: php laravel-4


    【解决方案1】:

    您使用的是什么驱动程序? https://laravel.com/docs/4.2/queues#configuration

    如果您使用sync 进行本地开发,我相信工作会立即排队。您需要使用支持延迟的驱动程序。

    例子:

    1. Queue::later() not working on Laravel
    2. https://laracasts.com/discuss/channels/laravel/cant-get-later-to-delay-queued-emails-in-laravel-54

    【讨论】:

      猜你喜欢
      • 2022-08-13
      • 1970-01-01
      • 2022-08-17
      • 2019-07-17
      • 2018-08-22
      • 1970-01-01
      • 1970-01-01
      • 2020-05-22
      • 2018-03-13
      相关资源
      最近更新 更多