lumne和laravel无论是基类还是composer都有些许差距,lumen相较于laravel要简洁很多。
今天用看lumen文档做异步任务的时候就走了歪路,一直在用laravel的相关方法,导致浪费了不少时间。
做异步队列的时候,首先注意配置的就是database和redis的相关配置文件的修改(我这里测试了database和redis两种队列驱动)
注意事项:
1、config/queue.php 的配置,所有队列配置的相关参数。
2、database.php的配置,database的队列驱动程序配置。
3、.env的配置:redis的相关配置,以及配置使用detabase还是redis异步驱动队列的配置(QUEUE_CONNECTION默认是sync同步队列,修改成database或者redis异步队列)。
4、lumne和laravel的队列区别就是make:job的命令是laravel的相关方法,lumen无法使用,直接复制ExampleJob
的代码即可。
Lumen 不包括自动创建新工作类的生成器,直接复制job文件夹中包含的 ExampleJob
类新建相关队列的类即可,接着使用 dispatch
功能从 Lumen 应用程序中的任何位置调度作业。(也可以使用 Queue
facade,查看lumen的文档即可,两种方法都可以使用)。
5、接着就是直接访问调用了异步队列任务的相关方法,调用后使用 php artisan queue:work 即可执行相关任务,命令也可以加上相关的参数,执行时间,以及推出时间,具体看文档即可。
lumen8文档:https://learnku.com/docs/lumen/6.x/queues/6116
larave8文档链接:https://learnku.com/docs/laravel/8.x/queues/9398#17bfa2
推荐