刚学习了laravel队列,把笔记记一下。
1.第一步配置(.env)QUEUE_CONNECTION=database2.database 驱动设置
第一步:生成 jobs 数据迁移表
php artisan queue:table
效果如下:
第二步: 创建jobs表,执行迁移命令
php artisan migrate
效果如下:
第一步: 进入 thinker
php artisan thinker
第二步:创建数据 (thinker命令)
factory(AppUser::class,10)->create(); // 创建10个用户
打开users表 就能看到 创建的10 个新用户
4.创建 Jobs及编写第一步:创建
php artisan make:job Email
此时能在 app 目录下生成个 Jobs 文件夹 及我们创建的 Email.php文件
效果如下:
第二步:编写Email.php
user = $user; } /** * Execute the job. * * @return void */ public function handle() { //打印日记 Log::info("发送的邮件是:".$this->user->email); } }6. 创建控制器,分发任务
第一步:创建Usercontroller控制器
php artisan make:controller UserController
第二步:编写Usercontroller
get(); foreach ($users as $user){ $this->dispatch(new Email($user)); } return "Done"; } }7.编写路由 添加队列
1.web.php
Route::get("/", "UserController@store");
2.访问路由后 jobs 表将会生成 符合条件的用户
3.执行任务
php artisan queue:work
执行完命令后 jobs 刚才添加的数据 就没了
4.打开日志文件
如图:
会发现我们在 Email.php handle下打印的数据
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/31485.html
摘要:已经取消了参数,都用来执行。取数据的过程事物处理已经打开。取得符合条件的队列后程序会更新该条数据,并且更新完后即。 connections => [ .... database => [ driver => database, table => jobs, queue => defaul...
摘要:配置项用于配置失败队列任务存放的数据库及数据表。要使用队列驱动,需要在配置文件中配置数据库连接。如果应用使用了,那么可以使用时间或并发来控制队列任务。你可以使用命令运行这个队列进程。如果队列进程意外关闭,它会自动重启启动队列进程。 一、概述 在Web开发中,我们经常会遇到需要批量处理任务的场景,比如群发邮件、秒杀资格获取等,我们将这些耗时或者高并发的操作放到队列中异步执行可以有效缓解系...
摘要:说明队列配置文件存放在。每一种队列驱动的配置都可以在该文件中找到,包括数据库,,,,以及同步本地使用驱动。其中还包含了一个队列驱动用于那些放弃队列的任务。 showImg(https://segmentfault.com/img/remote/1460000012384126?w=888&h=280); 说明 队列配置文件存放在 config/queue.php。 每一种队列驱动的配...
阅读 1003·2021-11-23 09:51
阅读 2312·2021-10-08 10:22
阅读 2493·2021-09-29 09:35
阅读 834·2021-09-22 15:20
阅读 2835·2019-08-30 15:53
阅读 2398·2019-08-30 13:55
阅读 1067·2019-08-29 17:27
阅读 2853·2019-08-29 17:26