首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >按优先级消耗RabbitMq

按优先级消耗RabbitMq
EN

Stack Overflow用户
提问于 2016-12-21 21:18:47
回答 1查看 532关注 0票数 3

我想使用RabbitMq队列中的消息,但只针对一个priority,我为我的队列x-max-priority:10和具有优先级的消息进行了优先级声明

代码语言:javascript
复制
Exchange    exchange.fanout
Properties  priority:   10
            content_type:   text/plain

现在如何使用只具有优先级2的消息呢?

我试过这样做

代码语言:javascript
复制
$channel->basic_consume(
    'priority-queue',
    '',
    false,
    false,
    false,
    false,
    function ($message) {
        /** @var AMQPMessage $message */
        echo $message->getBody();
        echo "\n";
    },
    null,
    new AMQPTable(
        [
            'x-priority' => 2,
        ]
    )
);

但是我得到了所有的消息,当我使用x-priority => ['I', 2]时,我得到了PRECONDITION_FAILED - invalid arg 'x-priority' for queue 'priority-queue'

EN

回答 1

Stack Overflow用户

发布于 2016-12-21 21:34:12

,现在我如何才能使用优先级为2的消息

要做到这一点,最简单的方法是更改路由,以便将您的“优先级”消息发送到只有这些消息才会到达的队列。

这样,您就不必担心队列中的其他消息,而且您的使用者可以专用于此队列中的任何消息……这些消息恰好只是这个“优先级”的消息

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

https://stackoverflow.com/questions/41263719

复制
相关文章

相似问题

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