位置: 编程技术 - 正文

浅析Laravel5中队列的配置及使用

编辑:rootadmin

推荐整理分享浅析Laravel5中队列的配置及使用,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

前言

队列常常用于两种场景,一种是高并发的情况,一种是耗时的操作,可以将任务放到队列中去,消费者从队列取任务执行,当然还有失败的情况如何处理,以及延迟,重试,更复杂的情况还有优先级的实现。

在Laravel 5中使用队列非常简单,并且失败处理,延迟,重试的方法都已经实现,下面简单尝试了一下Laravel的队列服务。

Laravel默认支持以下几种队列服务:sync, database, beanstalkd, sqs, redis,本例使用redis作为队列服务,需先配置好Redis服务。

1.队列服务配置

在配置文件queue.php的connections中已经默认定义了redis的连接:

在.env环境配置文件中把默认的队列驱动改成redis:

为了避免配置缓存的影响,执行以下命令清除并重建配置缓存:

2.新建Queueable Jobs

使用命令:

新建一个名为MyJob的队列处理类,在App/Jobs目录下自动生成一个MyJob.php文件。

MyJob.php需要实现handle方法,用来具体执行队列任务,构造函数可以用来传递需要的参数,handle方法支持依赖注入。

浅析Laravel5中队列的配置及使用

这里handle方法随便写了一个,就是往一个list类型数据结构中存一个key-value数据,测试消费队列的时候有没有起作用,构造函数传两个参数就是key和value.

在控制器中使用dispatch方法调用队列,将任务放入队列中,控制器中写个方法如public function test(),new MyJob的构造函数传两个随机生成的字符串参数:

配置并访问路由,可以多访问几次,然后到Redis中查看,会发现把队列存入了一个queue::queue:default的List结构中:

其中value内容如下,这是转换成json格式的,而实际上是经过序列号的字符串:

这里data参数里包含了队列服务Job的名称,构造函数的参数等信息,消费者执行任务的依据。attempts表示重试的次数,往往执行队列任务失败了会重试,可以设置最多尝试次数。

3.消费队列

这个时候任务只是入了队列,但并没有消费,执行:

这个命令,Laravel就开始消费队列。

可以看到这几个任务以此被消费,再去Redis看看有没有实现预期要达到的效果,每个任务往一个List类型的结构写入数据。

这证明队列任务消费成功。

总结

本文的内容到这就结束了,当然,还有更多Laravel队列的用法,可以请大家继续参考官方手册。希望本文的内容对大家学习Laravel有所帮助。

Thinkphp微信公众号支付接口 本文实例为大家分享了Thinkphp微信公众号支付接口,供大家参考,具体内容如下第一步先把文件夹的那两个图片配置成一样的路径除了域名要改其他保持

微信自定义菜单的创建/查询/取消php示例代码 微信公众帐号服务号可以使用自定义菜单功能。之前在创建菜单时一直失败,原因是$data格式一直没有传正确,后来终于解决了。这里先记录下顺便封装

PHP+JQuery+Ajax实现分页方法详解 本文实例讲述了PHP+JQuery+Ajax实现分页的方法。分享给大家供大家参考,具体如下:为了锻炼下jQuery,决定自己动手写写分页最终的效果如图:点击某个

标签: 浅析Laravel5中队列的配置及使用

本文链接地址:https://www.jiuchutong.com/biancheng/301406.html 转载请保留说明!

上一篇:php微信支付接口开发程序(php支付接口开发)

下一篇:Thinkphp微信公众号支付接口(thinkphp5微信公众号开发)

  • 应纳税所得额为负数是什么意思
  • 投资公司取得的投资收益属于销售额吗
  • 累进税率的税种有哪些
  • 运输开票的税点是多少
  • 钢材贸易公司是做什么的
  • 小规模企业所得税多少
  • 费用分割单模板
  • 已经勾选确认的发票可以取消认证吗
  • 期货平仓费用
  • 供用电合同主要有
  • 企业管理咨询有限公司简介
  • 建筑业企业分包出克的是否能上报
  • 公司没有给员工买社保怎么赔偿
  • 抽奖获得的奖品有权转卖吗
  • 返还经费
  • 当月认证失控发票怎么做账处理?
  • 合同的印花税税率
  • 税务局减免的税金会计分录
  • 代开专票不满10万的要交附加吗?
  • 资金池利息收入计入投资收益吗
  • 压缩文件夹发给别人他能看到我桌面上的文件吗
  • 京东白条账单制和订单制是什么样的
  • 成立非盈利组织的条件
  • 个体工商户和个人商家的区别
  • 电脑管家lol修复
  • 其他货币资金包括哪些内容
  • safari浏览器怎么快进
  • 股票期权行权的基本每股收益怎么算
  • 事件监听处理的实现原理
  • php 生成opcode
  • framework在哪
  • 银行贷款用途能改吗
  • php curl_init
  • 吉野是哪里
  • 云服务器可以一直开着吗
  • 学堂在线结课后还能看吗
  • 《设计模式》
  • javascript手机上
  • 帝国cms安装教程
  • 完美破费是什么意思
  • phpcms怎么用
  • 报废产品需要入库吗
  • 计算分配本月职工工资会计分录
  • 个人工程款结算了对方不付怎么办
  • 材料暂估入库的依据有哪些
  • 销货退回未开红字发票
  • 出口汽车配件怎么报关
  • 待处理流动资产损益是什么类科目
  • 扣税8%
  • 企业之间利息收入开票吗
  • 资产负债表日后期间是指
  • 债权投资相关科目
  • 其他应付款冲账分录
  • 诉讼期间的利息法院支不支持
  • 一次开票分期确认收入
  • 商贸公司经营范围可以写烟酒吗
  • 业务招待费进项税额转出会计分录
  • 长期挂账其他应付款处理
  • 固定资产的主要特征
  • 利润表中管理费用根据什么填
  • 本月的费用
  • win10系统迅雷
  • arp攻击的原理及防范
  • vmware虚拟机不能用桥接模式
  • win8开启快速启动
  • windows任务
  • win7 64位系统怎么查看串口号?
  • macbook xcode
  • bootstrap导航有哪些
  • android项目打包成jar包
  • js中的onchange
  • 用jquery
  • three. js
  • unity3D游戏开发
  • js基础知识
  • AndroidManifest.xml文件属性详解
  • python文件与异常答案
  • javascript教程
  • 郑州地方税务局网站官网
  • 未按时缴纳税款是什么行为
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设