laravel队列

news2024/11/24 10:58:55

laravel redis队列

1、创建job队列任务

php artisan make:job StoreUser

执行上述命令后,会生成app/Jobs/StoreUser.php文件,编辑文件内容如下:

<?php

namespace App\Jobs;

use Illuminate\Bus\Queueable;
use Illuminate\Contracts\Queue\ShouldQueue;
use Illuminate\Foundation\Bus\Dispatchable;
use Illuminate\Queue\InteractsWithQueue;
use Illuminate\Queue\SerializesModels;
use Illuminate\Support\Facades\DB;

class StoreUser implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    /**
     * Create a new job instance.
     *
     * @return void
     */
    public function __construct()
    {
    }

    /**
     * 执行队列的时候就会执行该handle方法
     *
     * @return void
     */
    public function handle()
    {
        var_dump("开始队列了....");

        Db::table('student')->insert(['name'=>'Xiao San2']);

        var_dump("laravel自定义队列触发了");
    }

    public function fail($exception = null)
    {
        dd('发送失败');
    }
}

二、书写控制器TestController.php方法如下:

<?php

namespace App\Http\Controllers;

use App\Jobs\StoreUser;

class TestController extends Controller
{
    public function index()
    {
        //加入到队列中,延迟60秒
        $job = (new StoreUser())->delay(60);
        $this->dispatch($job);

        return response()->json(['msg' => "测试队列...ok~~~"]);
    }
}

三、添加web.php路由

<?php

use Illuminate\Support\Facades\Route;

Route::get('index', [\App\Http\Controllers\TestController::class, 'index']);

四、.env文件的QUEUE_CONNECTION项修改为如下配置

QUEUE_CONNECTION=redis

五、开始执行测试

①首先命令行执行命令:

php artisan queue:work

改命令用于监听往队列中添加任务的

②浏览器访问路由 localhost/laravel_blog/public/index

返回信息如下:

{
	msg: "测试队列...ok~~~"
}

③查看redis中的任务数据

在这里插入图片描述

④查看控制台信息

在这里插入图片描述

⑤60秒以后,redis队列中的数据就被消费了,没有了

在这里插入图片描述

注意一条:

保证你的浏览器请求时的服务PHP版本和PHP命令行版本一致并且是同一个PHP,否则会采坑!!!特别是对一个机器上安装了多版本的PHP用户,这就是个大坑!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1123322.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JavaScript基础知识(二)

JavaScript基础知识&#xff08;二&#xff09; 一、ES2015 基础语法1.变量2.常量3.模板字符串4.结构赋值 二、函数进阶1. 设置默认参数值2. 立即执行函数3. 闭包4. 箭头函数 三、面向对象1.面向对象概述2.基本概念3.新语法与旧语法4.ES5 面向对象的知识4.1 ES5构造函数4.2 原型…

一秒开挂!工厂模式让你告别重复代码!

&#x1f3ac; 江城开朗的豌豆&#xff1a;个人主页 &#x1f525; 个人专栏 :《 VUE 》 《 javaScript 》 &#x1f4dd; 个人网站 :《 江城开朗的豌豆&#x1fadb; 》 ⛺️ 生活的理想&#xff0c;就是为了理想的生活 ! 目录 ⭐ 专栏简介 &#x1f4d8; 文章引言 一、工…

大模型开发07:LangChain 开发基础

大模型开发07:LangChain 开发基础 一、Model I/O 输入输出 任何语言模型应用程序的核心元素是什么?LangChain 提供了与任何语言模型交互的构建块。 Prompts: 模板化、动态选择和管理模型输入Language models: 通过通用的接口访问大模型Output parsers: 大模型输出解析模板化…

Oracle Enterprise Manager 认证列表

认证列表的查找方法参见Accessing the Enterprise Manager Certification Matrix。 认证分为对于OMS的&#xff0c;和对于Agent的。 OMS和Agent的描述见这里。 Oracle Management Agent The Management Agent is an integral software component that enables you to conver…

开源微信小程序商城源码PHP带后台管理——构建高效电商平台的基石

随着移动互联网的快速发展&#xff0c;微信小程序作为一种新型的电商形态&#xff0c;正逐渐成为商业领域的一种重要力量。对于许多商家来说&#xff0c;拥有一个功能完善、安全可靠的小程序商城源码至关重要。分享一款开源的微信小程序商城源码PHP&#xff0c;春哥七合一DIY小…

协作机器人应用场景

UR 双臂协作机器人在有人环境中 作业 ABB 双臂协作机器人进行医疗康复作业 KUKA iiwa 协作机器人拖动示教作业 机器人 – 环境物理交互控制要 求机器人具有力感知能力&#xff01;&#xff01; 在传 统的操作任务中&#xff0c;机械臂末端的静态 接触力可以通过多维力传感器…

【什么是高斯分布?还有什么分布?他们的用途是什么?】

高斯分布 高斯分布,也被称为正态分布或钟形曲线,是统计学中最为常见和重要的连续概率分布之一。高斯分布的概率密度函数(PDF)是: 其中: ( x ) 是变量( \mu ) 是分布的均值(mean)( \sigma ) 是标准差(standard deviation)( \sigma^2 ) 是方差(variance)以下是关于高…

#1024程序员节# 大家一起努力

1024&#xff0c;一年一度的程序员节&#xff0c;俗称“爱码士节”。 1024是2的十次方&#xff0c;二进制计数的基本计量单位之一&#xff0c;1G1024M&#xff0c;而1G与1级谐音&#xff0c;也是一级棒的意思~。程序员(英文Programmer)是从事程序开发、维护的专业人员。 程序员…

QCC Tx 发射器(source)通话(麦克风输入)切换

QCC Tx 发射器&#xff08;source&#xff09;通话&#xff08;麦克风输入&#xff09;切换 1.QCC(QCC3056) Tx 发射器&#xff08;source&#xff09;连接BT 接收设备&#xff08;Sink&#xff09;QCC USB声卡自动识别音乐或者通话&#xff0c;通过蓝牙传输到BT 接收设备&…

【RocketMQ集群】Linux搭建RocketMQ双主双从集群

在当今大数据时代&#xff0c;消息队列系统成为了构建高可用、可扩展和可靠的分布式应用的重要组件之一。而Apache RocketMQ作为一款开源的分布式消息中间件&#xff0c;以其高吞吐量、低延迟和可靠性而备受青睐。为了满足大规模应用的需求&#xff0c;搭建RocketMQ集群是一种常…

腾讯共享WiFi贴项目推广员是怎么收益的?

腾讯共享WiFi贴项目是一种非常普遍的商业共享模式&#xff0c;它为用户提供了便携、高速的无线网络服务。然而&#xff0c;人们对于这种项目是否真的能让共享WiFi贴推广员挣到钱还存在疑问。 腾讯共享WiFi贴扫码项目的运作方式是这样的&#xff1a;推广员将WiFi贴二维码粘贴到商…

“香蕉大王”的转型升级,能否扩大市场份额?

佳农食品控股 ( 集团 ) 股份有限公司,于2023年10月11日同海通证券签署上市辅导协议&#xff0c;计划登陆上交所主板。据了解这已经不是佳农食品第一次IPO了&#xff0c;2019 年&#xff0c;佳农集团曾向上交所递交过招股说明书&#xff0c;当时的招股书披露&#xff0c;佳农集团…

柴油发电机测试的工作原理

柴油发电机测试的工作原理是通过对柴油发电机进行一系列的性能测试和功能检查&#xff0c;以确保其正常运行和可靠性&#xff0c;通过加载发电机负载&#xff0c;测试发电机的额定功率、最大功率和稳定性。这可以通过连接负载设备&#xff0c;如电阻箱或电动机&#xff0c;来模…

03.MySQL事务及存储引擎笔记

事务 查看/设置事务 select autocommit; --查看当前数据库的事务状态&#xff0c;1表示开启&#xff0c;0表示关闭 set autocommit 0; --关闭自动事务提交采用关闭自动事务提交我们就可以手动进行事务提交&#xff0c;但是这种设置方式是对整个数据库起作用&#xff0c;一些可…

CMake学习(二):使用CMake构建包含其他库的C++项目

文章目录 一. 构建一个包含其他库的项目二. 构建过程1. 创建程序源文件2. 构建项目并编译源代码 附件 一. 构建一个包含其他库的项目 CMake学习(一)&#xff1a;使用CMake构建一个简单的C项目 在这上一篇文章中&#xff0c;我们已经了解了如何使用CMake创建一个基本项目。在这…

华为数通方向HCIP-DataCom H12-831题库(多选题:21-40)

第21题 网络管理员A希望使用ACL匹配特定的路由条目,请问以下哪些路由条目将被图中的ACL规侧匹配? acl number 2000 rule 10 permit source 10.0.0.0 0.0.6.0A、10.0.0.1/32 B、10.0.0.0/24 C、10.0.1.0/24 D、10.0.2.0/24 答案: 解析: 通配符十进制6转换二进制为00000110,…

从Excel到智能化:智能报表的演进与未来发展趋势

摘要&#xff1a;本文由葡萄城技术团队于CSDN原创并首发。转载请注明出处&#xff1a;葡萄城官网&#xff0c;葡萄城为开发者提供专业的开发工具、解决方案和服务&#xff0c;赋能开发者。 报表的迭代历程 报表工具的诞生与计算机技术的出现和信息技术的进步密不可分。下图是报…

javascript追加标签

页面样式&#xff08;初始化&#xff09;&#xff1a; 开头追加标签&#xff1a; 结尾追加标签&#xff1a; 开头结尾追加标签&#xff1a; js代码&#xff1a; 样式展示&#xff1a; js追加标签

议题征集|The Open Group 2023亚太区年度颁奖盛典暨ESG架构年度大会诚邀演讲嘉宾!

每个人心中 都有各自对ESG架构管理的想象与理解 我们期待用一场汇聚 真知灼见与探索实践的盛典 重新定义架构的奇妙 ▼ 在全球可持续发展浪潮下&#xff0c;ESG目标&#xff08;环境、社会和治理&#xff09;的重要性愈发凸显。越来越多的企业认识到&#xff0c;以ESG为基…

第二十章 综合案例——基于多态的职工管理系统

1、管理系统需求 职工管理系统可以用来管理公司内所有员工的信息 本教程主要利用C来实现一个基于多态的职工管理系统 公司中职工分为三类&#xff1a;普通员工、经理、老板&#xff0c;显示信息时&#xff0c;需要显示职工编号、职工姓名、职工岗位、以及职责 普通员工职责&…