https://www.choudalao.com/article/272
https://www.bbsmax.com/A/KE5QkpNjzL/
https://cloud.tencent.com/developer/article/1770845
pifox.cn/web/main
https://www.jianshu.com/p/554a44ae7671
QUEUE_DRIVER=redis
QUEUE_CONNECTION=redis
php artisan queue:work --daemon --sleep 60
默认QUEUE_DRIVER=sync 是同步的,使用delay延时队列不能使用同步的,否则不起作用。
要想使用延时队列必须把 QUEUE_DRIVER设置成 redis 或者 datebase 延迟才起作用
一般什么情况下会用到延迟队列呢?举个栗子(商城用户生成订单后没有付款三十分钟后取消订单,这个时候用延时队列来处理岂不快哉,或者群发邮件短信等一些耗时的操作时就需要用到延时队列,这样就可以减轻服务器的压力,减少等待时间
https://blog.csdn.net/qq_41688060/article/details/108398172
$res = SendReminderEmail::dispatch('66666@qq.com')->delay(3);
查看监听,访问路由三秒钟后会出现
队列不仅可以延迟执行,而且还可以设置执行的时间和执行失败的次数
<?php namespace App\Jobs;
class SendReminderEmail implements ShouldQueue
{
/**
* 任务最大尝试次数。
* @var int
*/
public $tries = 5;
/**
* 任务执行的最大秒数。
* @var int
*/
public $timeout = 30;
}
https://www.404bugs.com/details/1079022237066776576
如有问题,可以QQ搜索群1028468525加入群聊,欢迎一起研究技术
转载请注明:laravel中队列的使用 出自老鄢博客 | 欢迎分享