剛學習了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下打印的數據
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/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。 每一種隊列驅動的配...
閱讀 1032·2021-11-23 09:51
閱讀 2356·2021-10-08 10:22
閱讀 2629·2021-09-29 09:35
閱讀 866·2021-09-22 15:20
閱讀 2869·2019-08-30 15:53
閱讀 2419·2019-08-30 13:55
閱讀 1108·2019-08-29 17:27
閱讀 2876·2019-08-29 17:26