美文网首页
Laravel中的队列执行过慢

Laravel中的队列执行过慢

作者: 追风骚年 | 来源:发表于2018-11-25 23:24 被阅读28次

本来不想水的,公司的白先生硬要我水一篇,那就简单记录一下。

问题

上周,系统出现了一个很要命的问题,后端用的 laravel 队列执行导表任务异常缓慢,以前几分钟就能出的报告,几个小时都没动静,因为业务需要,每次用户观看视频都需要计算一些非常耗时的任务。

调研

后来调查尝试也确实是这块出了问题,laravel 文档中介绍了队列的优先级,提到参数顺序的问题。

$ php artisan queue:work --queue=high,low

--queue 为队列的名称,参数用 , 分割,排的越靠前优先级越高。所以将越耗时的任务的优先级设置越低,将位置设置越靠后就好了。

小结

所以如果系统中存在耗时任务,造成整个队列都被卡住,应该按预计的执行耗时排序,将越耗时的任务提到越靠后的位置,这样就可以解决执行时间较短的任务优先执行

参考

相关文章

  • Laravel中的队列执行过慢

    本来不想水的,公司的白先生硬要我水一篇,那就简单记录一下。 问题 上周,系统出现了一个很要命的问题,后端用的 la...

  • docker 内定时任务,守护进程采坑

    业务需要执行laravel的队列监听进程和任务队列,任务队列在docker中装 supervisor 然后每隔60...

  • horizon - 队列监控

    Horizon 为 Laravel Redis 队列提供一个仪表板,用于查看和管理 Redis 队列任务执行的情况...

  • laravel 基础教程 —— 队列

    队列 简介 laravel 的队列服务对各种不同的后台队列服务提供了统一的 API。队列允许你延迟执行消耗时间的任...

  • Laravel 队列queue(database篇)

    队列 Laravel队列服务为各种不同的后台队列提供统一的API允许推迟耗时任务(例如发送邮件)的执行,从而大幅提...

  • laravel中使用 database为驱动的队列发送消息

    简介 laravel 的队列服务对各种不同的后台队列服务提供了统一的 API。队列允许你延迟执行消耗时间的任务,这...

  • Laravel5.8 队列的使用与监控

    队列 Laravel5 使用队列可以异步执行消耗时间的任务,降低请求的响应时间 安装队列驱动 根据你自己的需求安装...

  • Laravel 5.2 教程 - 队列

    一、简介 Laravel 队列组件提供一个统一的 API 集成了许多不同的队列服务,队列允许你延后执行一个耗时的任...

  • laravel使用队列监控 Horizon

    继 laravel使用队列 ,本篇介绍更好的队列监控工具--Horizon Horizon 是 Laravel 生...

  • Laravel多队列同时执行

    业务场景 使用larave框架开发,有多个队列任务,其中有个别任务特别耗时,使用单个队列的话必须等待前一个任务完成...

网友评论

      本文标题:Laravel中的队列执行过慢

      本文链接:https://www.haomeiwen.com/subject/guzmqqtx.html