Laravel佇列使用

aba66發表於2021-12-29

使用 Redis 來作為佇列驅動器

1、安裝Redis

composer require "predis/predis:~1.1"

修改環境變數 QUEUE_CONNECTION

QUEUE_CONNECTION=redis
REDIS_CLIENT=predis

生成一個新的佇列任務

php artisan make:job TestJob

app/Jobs/TestJob.php

<?php

namespace App\Jobs;

use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldBeUnique;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;

class TestJob implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    protected $demo;

    public function __construct($demo)
    {
        echo '事件觸發成功!---------'.$demo;
        $this->demo = $demo;
    }

    public function handle()
    {
        //
        echo '處理任務中。。。。。。';
    }
}

呼叫佇列

$demo = '佇列測試資料';
dispatch(new TestJob($demo));
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章