Laravel队列的创建使用步骤流程
管理员 发布于 4年前   450
Laravel队列的创建使用步骤流程
所以当我们使用队列,当您收到许多需要耗时的请求时,可以使用消息队列解决此问题。
看看一段官网说明:
Laravel 队列为不同的后台队列服务提供统一的 API,例如 Beanstalk,Amazon SQS,Redis,甚至其他基于关系型数据库的队列。队列的目的是将耗时的任务延时处理,比如发送邮件,从而大幅度缩短 Web 请求和响应的时间。
队列配置文件存放在 config/queue.php 文件中。每一种队列驱动的配置都可以在该文件中找到,包括数据库, Beanstalkd, Amazon SQS, Redis,以及同步(本地使用)驱动。其中还包含了一个 null 队列驱动用于那些放弃队列的任务。
1.创建队列表
php artisan queue:table
php artisan migrate
2.配置驱动,转到QUEUE_CONNECTION并将其更改为类似以下内容
QUEUE_CONNECTION=database
3.创造一个job
php artisan make:job SendMail
4.使用它 (控制器或您需要的任何地方调用程序)
SendMail::dispatch("hi","how are you","[email protected]");
5.启动队列
php artisan queue:work
or
php artisan queue:listen
如果您想知道两者之间有什么区别,请阅读本
“或者,您可以运行queue:listen命令。
使用queue:listen命令时,当您要重新加载更新的代码或重置应用程序状态时,不必手动重新启动工作程序;
但是,此命令不是和queue:work一样有效:”
之后,您应该会看到这样的东西
[2020-06-16 17:04:08][161] Processing: App\Jobs\SendMail
Start sending email
Email sended to [email protected]
[2020-06-16 17:04:10][161] Processed: App\Jobs\SendMail
[2020-06-16 17:04:10][162] Processing: App\Jobs\SendMail
Start sending email
Email sended to [email protected]
[2020-06-16 17:04:12][162] Processed: App\Jobs\SendMail
[2020-06-16 17:04:12][163] Processing: App\Jobs\SendMail
Start sending email
Email sended to [email protected]
[2020-06-16 17:04:14][163] Processed: App\Jobs\SendMail
[2020-06-16 17:04:14][164] Processing: App\Jobs\SendMail
Start sending email
Email sended to [email protected]
[2020-06-16 17:04:16][164] Processed: App\Jobs\SendMail
[2020-06-16 17:04:16][165] Processing: App\Jobs\SendMail
Start sending email
Email sended to [email protected]
[2020-06-16 17:04:18][165] Processed: App\Jobs\SendMail
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
该博客于2020-12-7日,后端基于go语言的beego框架开发
前端页面使用Bootstrap可视化布局系统自动生成
是我仿的原来我的TP5框架写的博客,比较粗糙,底下是入口
侯体宗的博客
文章标签
友情链接