我想使用RabbitMq队列中的消息,但只针对一个priority,我为我的队列x-max-priority:10和具有优先级的消息进行了优先级声明
Exchange exchange.fanout
Properties priority: 10
content_type: text/plain现在如何使用只具有优先级2的消息呢?
我试过这样做
$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'
发布于 2016-12-21 21:34:12
,现在我如何才能使用优先级为2的消息
要做到这一点,最简单的方法是更改路由,以便将您的“优先级”消息发送到只有这些消息才会到达的队列。
这样,您就不必担心队列中的其他消息,而且您的使用者可以专用于此队列中的任何消息……这些消息恰好只是这个“优先级”的消息
https://stackoverflow.com/questions/41263719
复制相似问题