内容简介:刚学习了laravel队列,把笔记记一下。第一步:生成 jobs 数据迁移表效果如下:
刚学习了 laravel 队列,把笔记记一下。
1.第一步配置(.env)
QUEUE_CONNECTION=database
2.database 驱动设置
第一步:生成 jobs 数据迁移表
php artisan queue:table
效果如下:
第二步: 创建jobs表,执行迁移命令
php artisan migrate
效果如下:
3.模拟数据
第一步: 进入 thinker
php artisan thinker
第二步:创建数据 (thinker命令)
factory(App\User::class,10)->create(); // 创建10个用户
打开users表 就能看到 创建的10 个新用户
4.创建 Jobs及编写
第一步:创建
php artisan make:job Email
此时能在 app 目录下生成个 Jobs 文件夹 及我们创建的 Email.php文件
效果如下:
第二步:编写Email.php
<?php namespace App\Jobs; use App\User; use Illuminate\Bus\Queueable; use Illuminate\Queue\SerializesModels; use Illuminate\Queue\InteractsWithQueue; use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Foundation\Bus\Dispatchable; use Illuminate\Support\Facades\Log; class Email implements ShouldQueue { use Dispatchable, InteractsWithQueue, Queueable, SerializesModels; //定义 public $user; /** * Create a new job instance. * * * @return void */ public function __construct(User $user) { //赋值 $this->user = $user; } /** * Execute the job. * * @return void */ public function handle() { //打印日记 Log::info('发送的邮件是:'.$this->user->email); } }
6. 创建控制器,分发任务
第一步:创建Usercontroller控制器
php artisan make:controller UserController
第二步:编写Usercontroller
<?php namespace App\Http\Controllers; use App\Jobs\Email; use App\Jobs\SendReminderEmail; use App\User; class UserController extends Controller { // public function store() { $users = User::where('id','<',6)->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下打印的数据
完结
以上所述就是小编给大家介绍的《Laravel 队列 --- database 驱动(今天刚学习了队列,记录下笔记)》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- rabbitmq实现延时队列(死信队列)
- 消息队列(三)常见消息队列介绍
- 消息队列探秘 – RabbitMQ 消息队列介绍
- 消息队列和任务队列有什么区别?
- 数据结构之——队列与循环队列
- Redis应用-异步消息队列与延时队列
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
指数型组织
萨利姆•伊斯梅尔 (Salim Ismail)、迈克尔•马隆 (Michael S. Malone)、尤里•范吉斯特 (Yuri van Geest) / 苏健 / 浙江人民出版社 / 2015-8-1 / CNY 69.90
《指数型组织》是一本指数级时代企业行动手册。作者奇点大学创始执行理事萨利姆·伊斯梅尔归纳了指数型组织的11个强大属性,并提出了建立指数型组织的12个关键步骤。通过自己创建的一套“指数商”测试题,伊斯梅尔还测量出了指数型组织世界100强。 为什么小米、海尔和阿里巴巴能进入“指数型组织世界100强”名单?“独角兽”Uber、Airbnb、谷歌等知名企业是如何指数化自己的组织的? 未......一起来看看 《指数型组织》 这本书的介绍吧!