作者信息

长期闲置

长风破浪会有时,直挂云帆济沧海。

最近文章
ajax请求时post和get的区别是什么865
ajax默认是异步请求吗346
cors和ajax的区别是什么620
视频教程分类
推荐视频教程
  • php程序员小白到大牛三个月集训php程序员小白到大牛三个月集训
  • Laravel 9 学习正当时—保姆级教程,想学不会都难!Laravel 9 学习正当时—保姆级教程,想学不会都难!
  • 千万级数据并发解决方案(理论+实战)千万级数据并发解决方案(理论+实战)
  • Laravel基础与实战(模块化)Laravel基础与实战(模块化)
  • 首页 >php框架 >Laravel > 正文

    laravel队列能做什么

    原创2022-06-21 16:25:32649 关注公众号:每天精选资源文章推送

    在laravel中,队列可以用于允许在表的前端进行删除操作,而在表的后端进行插入操作;队列是一种操作受限制的线性表,进行插入操作的称为队尾,删除操作的端被称为队头,队列可以将耗时任务的处理往后推延,能够提升web请求的响应速度。

    本文操作环境:Windows10系统、Laravel9版、Dell G3电脑。

    laravel队列能做什么

    队列是一种操作受限制的线性表,特殊之处在于它只允许在表的前端进行删除操作,而在表的后端进行插入操作。进行插入操作的端称为队尾,进行删除操作的端称为队头。

    通过队列,你可以将耗时任务 (如发送电子邮件) 的处理往后推延。延迟这些耗时的任务可以极大地提升 web 请求响应速度。

    实现队列有多种方式,Laravel也支持多种队列实现驱动,比如数据库、Redis、Beanstalkd、IronMQ及Amazon SQS等,此外还支持同步方式实现队列(默认),甚至将队列驱动设置为null表示不使用队列。Laravel为这些队列驱动提供了统一的接口,从而方便我们任意切换驱动而不需要改变业务逻辑编码,提供代码复用性。

    其实说白了,就是把任务的键名和键值储存起来而已,储存的媒介用什么都可以,而所谓的队列驱动,就是把储存在这些媒介中的任务代码拿出来按照队列的算法进行执行的一种调配方式的一段代码而已。

    优点

    解耦:消息队列可以对系统进行解耦,提高响应速度,系统功能向内聚合,对外开放;

    异步:消息队列可以对系统异步功能进行剥离,减少功能耦合,提供开发效率;

    削峰:消息队列可以削峰限流,确保下游消费者稳定运行;

    配置

    从配置文件开始,首先我们需要在配置文件中配置默认队列驱动为Redis,队列配置文件是config/queue.php。

    connections配置项:包含了Laravel支持的所有队列驱动。

    failed配置项:用于配置失败队列任务存放的数据库及数据表。这里我们需要按照自己的数据库配置对其做相应修改。

    说明:该配置文件第一个配置项default用于指定默认的队列驱动,这里可以更改为我们选用的其他队列驱动(实际上是修改.env中的QUEUE_DRIVER)

    如下图:

    06.png

    【相关推荐:laravel视频教程

    以上就是laravel队列能做什么的详细内容,更多请关注php中文网其它相关文章!

    20期PHP线上班

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

  • 相关标签:Laravel
  • 推荐:PHP从基础到实战教程视频

    相关文章

    相关视频


    专题推荐