栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在Pika中获取队列大小(AMQP Python)

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在Pika中获取队列大小(AMQP Python)

在AMQP协议中有两种获取队列大小的方法。您可以使用Queue.Declare或Basic.Get。

如果您使用的是使用Basic.Consume到达的消息,那么您将无法获得此信息,除非断开连接(超时)并重新声明队列,否则将收到一条消息但不确认。在较新版本的AMQP中,您可以主动重新排队该消息。

至于Pika,我不知道具体细节,但是AMQP的Python客户端一直在我这边刺。通常,您将需要使用猴子补丁类来获取所需的信息,或者允许队列使用方超时,以便您可以定期执行其他操作,例如记录统计信息或找出队列中有多少消息。

解决此问题的另一种方法是放弃,并使用Pipe类运行

sudo rabbitmqctl list_queues -pmy_vhost
。然后解析输出以找到所有队列的大小。如果执行此操作,则需要配置
/etc/sudoers
为不要求通常的sudo密码。

我祈祷其他人拥有更多的Pika经验来回答这一问题,指出您可以如何完成我提到的所有事情,在这种情况下,我将下载Pika并努力尝试。但是,如果没有发生这种情况,并且您难以修补Pika代码,则请参阅

haigha
。我发现它们的代码比其他Python
AMQP客户端库更直接,因为它们更加贴近AMQP协议。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/652537.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号