簡體   English   中英

Laravel 5.2使用數據庫的隊列

[英]Laravel 5.2 Queue Using Database

我從控制器中調度了一項任務,以使用

$this->dispatch(new SendWelcomeEmail($user));

SendWelcomeEmail工作中,我正在做

public function handle(Mailer $mailer)
{
    $mailer->send('emails.welcome', ['data' => 'data'], function ($m) {
        $m->from('noreply@gmail.com', 'Noreply');
        $m->to('xyz@live.com', 'xyz')->subject('Welcome');
    });
}

我的.env文件配置為

QUEUE_DRIVER=database
MAIL_DRIVER=smtp
MAIL_HOST=email-smtp.us-east-1.amazonaws.com
MAIL_PORT=587
MAIL_USERNAME=*access*
MAIL_PASSWORD=*key*
MAIL_ENCRYPTION=tls

經過:

  • 數據庫遷移-“作業”表
  • 在使用php artisan queue:listen進行作業分派觸發之前,運行隊列偵聽器

問題:作業已加載到數據庫中的“作業”表上,但未處理。 但是,當我更新隊列驅動這個工程完全沒問題。

QUEUE_DRIVER=sync

我在這里想念什么?

您的工作在班上有以下特征嗎?

use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

並實現:

ShouldQueue

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM