[讨论] 关于 队列 与 任务计划的选择

现在我们有个这样的场景 在较高并发的情况下, 我们把一些计算逻辑剥离了出来, 然后每一秒把计算出来的结果扔在redis上, 然后前端直接去取结果, 这样的情况下就有了个选择的问题.
首先因为是活动, 所以不需要所有时间都去触发这个job. 于是我的做法是: 首先创建一个延迟队列 在活动开始前几秒开始工作,然后在job最后面重新dispatch self并设置1S的延迟做到活动期间间隔一秒处理job.
但是这样有几个问题:

  1. delay(now()->addSecond()) 但是队列是3秒执行一次而不是一秒.
  2. 这样的使用场景是不是感觉跟任务调度更像?
  3. 因为有其他队列在跑, 其他队列数量上来会不会影响这个队列的处理?
    所以大家觉得该怎么选择?
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 2
leung0826

我觉得可以写一个 artisan 命令,活动开始前,启动任务调度,然后在调度中进行队列操作

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!