阅读(3497)
赞(7)
Laravel 8 自定义队列连接 & 队列名称
2021-07-02 16:44:03 更新
如果你想要自定义事件监听器所使用的队列的连接和名称,你可以在监听器类中定义 $connection
,$queue
或 $delay
属性:
<?php
namespace App\Listeners;
use App\Events\OrderShipped;
use Illuminate\Contracts\Queue\ShouldQueue;
class SendShipmentNotification implements ShouldQueue
{
/**
* 任务将被发送到的连接的名称
*
* @var string|null
*/
public $connection = 'sqs';
/**
* 任务将被发送到的队列的名称
*
* @var string|null
*/
public $queue = 'listeners';
/**
* 任务被处理的延迟时间(秒)
*
* @var int
*/
public $delay = 60;
}
如果你想在运行时定义监听器的队列,可以在监听器上定义一个 viaQueue
方法:
/**
* 获取监听器队列的名称
*
* @return string
*/
public function viaQueue()
{
return 'listeners';
}