首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Laravel以低优先级将工作推入不同的队列

Laravel以低优先级将工作推入不同的队列
EN

Stack Overflow用户
提问于 2017-04-16 12:48:45
回答 1查看 1.9K关注 0票数 1

现在,我正在使用Beanstalkd和Laravel作为我的队列,我这样做:dispatch(new ProcessPodcast($podcast));

但是,如何将队列推入优先级较低的不同工作中呢?这只会将队列推入不同的作业,但不会设置优先级:$job = (new ProcessPodcast($podcast))->onQueue('processing'); dispatch($job);

如果队列作业的优先级很低,那么它是否意味着在没有多个队列时会被触发,或者低优先级作业是如何工作的?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-04-19 08:18:12

代码语言:javascript
复制
dispatch((new Job)->onQueue('high'));

这段代码创建新的Job类实例,将其序列化并存储在名为high的队列中,但这并不意味着此队列是一个特殊的队列。此外,该队列的优先级可能低于低队列!这只是一个用来命名队列的字符串,当然,强烈建议遵循一些模式,以使其他开发人员能够更好地阅读代码。

config/queue.php文件中,可以定义将要处理的默认队列名。如果使用php artisan queue:work命令创建队列工作者,那么它将侦听该队列上的作业请求。但是,您可以在--queue命令中使用queue:work参数覆盖默认值:

代码语言:javascript
复制
php artisan queue:work --queue=high,low # or --queue=high,medium,low

此命令还设置队列的优先级。只要在高队列中有任何作业请求,它就会在低队列中的任何请求之前被处理。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43437410

复制
相关文章

相似问题

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