Home > Backend Development > PHP Tutorial > message - 如何用php获取rabbitmq指定队列中的未处理消息数量

message - 如何用php获取rabbitmq指定队列中的未处理消息数量

WBOY
Release: 2016-06-06 20:51:53
Original
2320 people have browsed it

PHP扩展选用的是php-amqp

希望实现的是,在php中能获取到指定消息队列中的未被领取走的消息数量(包括Un-ack的消息)。

在命令行下执行: XXX/rabbitmqctl list_queues可以返回该数据

我想知道php下是否有对应方法可以获取该值?

@modi 的答案补全代码:
message - 如何用php获取rabbitmq指定队列中的未处理消息数量

回复内容:

PHP扩展选用的是php-amqp

希望实现的是,在php中能获取到指定消息队列中的未被领取走的消息数量(包括Un-ack的消息)。

在命令行下执行: XXX/rabbitmqctl list_queues可以返回该数据

我想知道php下是否有对应方法可以获取该值?

@modi 的答案补全代码:
message - 如何用php获取rabbitmq指定队列中的未处理消息数量

declare一个队列,置AMQP_PASSIVE标志位,就不会影响服务端状态,并返回消息计数。

$conn = new AMQPConnection();
//...
$queue = new AMQPQueue($conn);
$queue->setFlags(AMQP_PASSIVE);
$messageCount = $queue->declare($queueName); // 
                            
            <p class="answer fmt" data-id="1020000000118543">
                                    </p><p>看了手册http://php.net/manual/en/book.amqp.ph...,好像没有相应的方法</p>
                            
Copy after login
Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template