繁体   English   中英

在Laravel v4.2中无需等待发送电子邮件即可触发队列作业

[英]trigger queue jobs without waiting sending email in Laravel v4.2

我正在处理用户注册任务,我的目标是在用户注册30分钟后发送欢迎电子邮件,但我不知道此过程将如何进行,因为每次我在Queue中收到的总作业为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;
}

现在,我感到困惑的是,在成功注册用户且不发送电子邮件之后,该作业将如何执行。 请帮助或参考任何有用的演示链接。

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

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

例子:

  1. Queue :: later()在Laravel上不起作用
  2. https://laracasts.com/discuss/channels/laravel/cant-get-later-to-delay-queued-emails-in-laravel-54

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM