1.配置使用redis队列
在.env文件找到QUEUE_DRIVER=sync改成QUEUE_DRIVER=redis
redis配置一般不用改如果有密码改.env文件的REDIS_PASSWORD就可以了
2.生成队列文件
根目录执行php artisan make:job Wzb,这时在app目录下会生成Jobs/Wzb.php
3.编写队列代码
打开Wzb.php在handle方法下入入如下代码:
file_put_contents('wzb.txt','王召波测试');
echo '恭喜你执行成功';
4.启动队列监听
根目录执行
php artisan queue:work
5.控制器调用队列
随便找一个可以访问的控制器方法,复制下面代码
\App\Jobs\Wzb::dispatch()->delay(10);
echo '王召波队列演示';die;
6.访问队列
用浏览器访问你刚才的控制器方法,过10秒你会发现在控制台输出"恭喜你执行成功",并且项目的根目录会生成wzb.txt文件.
(1)浏览器访问
(2)10秒之后 控制台显示