首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Laravel中的多个队列

Laravel中的多个队列
EN

Stack Overflow用户
提问于 2018-05-29 12:58:04
回答 5查看 14.7K关注 0票数 5

我正在创建一个laravel的网络应用程序,其中竞价是由用户在多个游戏中完成。竞标是由前端用户和cron作业执行的。Cron的工作在每一秒后在每一场比赛中出价。因此,当同一行同时被访问时,bids之间会发生一些冲突。为了解决并发问题,我决定使用laravel队列进行竞价。但我有多个游戏,因此我想同时出价每一场比赛。我不希望同一游戏的出价在同一时间被处理,因为这样可能会发生并发问题。我想了解一下laravel中的多队列系统。在互联网上搜索后,我了解了多个队列,比如

代码语言:javascript
运行
复制
php artisan queue:work --queue=myJobQueue, myJobQueue1, myJobQueue2,..myJobQueue7

但我不确定它是如何工作的。请有人给我详细解释一下,所有7个队列同时工作或一个接一个。

EN

Stack Overflow用户

发布于 2021-07-25 05:33:32

这可能是旧的,但只是以防万一,所有的答案都在点上,但你必须将.env变量QUEUE_CONNECTION设置为其他东西而不是同步,如果你的配置设置为同步,它将按照进入队列的顺序获取每个作业(因此完成一个,然后开始下一个),如果它设置为数据库或redis,它将在需要时并行获取作业(这是设置优先级的想法)你应该检查这篇文章(它对我有帮助) https://medium.com/hexavara-tech/optimize-laravel-with-redis-caching-made-easy-bf486bf4c58你还需要在配置/队列.php中配置你的队列,例如在'connections‘数组中:

代码语言:javascript
运行
复制
    'database' => [
        'driver' => 'database',
        'table' => 'jobs',
        'queue' => ['default','another_queue'], //this is just 'default' by default
        'retry_after' => 90,
    ],

这适用于此文件中的所有其他配置。

票数 1
EN
查看全部 5 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50576569

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档