多个不同队列需要多个配置吗

默认队列是default,config/queue.php配置为

'redis' => [
    'driver' => 'redis',
    'connection' => 'default',
    'queue' => 'default',
    'retry_after' => 90,
    'block_for' => 5,
],

那如果有个发邮箱的队列,使用onQueue指定了队列为emails ,需要再配置一个emails吗,因为上面的配置里面'queue' => 'default',default。都是用redis

ProcessPodcast::dispatch()->onQueue('emails');
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
随波逐流
最佳答案

不需要多个配置

但是需要监听,例如:实现发送邮件的队列 emails, 执行

php artisan queue:work --queue=emails

使用

ProcessPodcast::dispatch()->onQueue('emails');

如果不指定队列名称默认使用 default

ProcessPodcast::dispatch();

这个任务就会跑到 default 中执行。

1年前 评论
讨论数量: 3

一般是不需要的,它们会共享一个配置

1年前 评论
随波逐流

不需要多个配置

但是需要监听,例如:实现发送邮件的队列 emails, 执行

php artisan queue:work --queue=emails

使用

ProcessPodcast::dispatch()->onQueue('emails');

如果不指定队列名称默认使用 default

ProcessPodcast::dispatch();

这个任务就会跑到 default 中执行。

1年前 评论

不需要 如果队列不同名称的话 可以在生产的时候指定不同的名称

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!