使用aio_pika,如何使确认模式触发并忘记

问题描述

使用aio_pika创建交换和队列。调用绑定或发布通常会用以下消息充斥日志:

Delivery tag 6 confirmed <pamqp.specification.Basic.Ack object at 0x7fe7b900aa20> was ignored
Delivery tag 1 confirmed <pamqp.specification.Basic.Ack object at 0x7fe7b9085b38> was ignored

获取频道时使用 publisher_confirms = False 会导致出现以下消息:

Unhandled message DeliveredMessage(delivery=<pamqp.specification.Basic.Return object at 0x7f5ff1c26048>,header=<pamqp.header.ContentHeader object at 0x7f5ff1c72278>,body=b'MESSAGE',channel=<Channel: "1">) returning

一段时间后,这些错误消息出现了:

InvalidFrameError - <pamqp.specification.Queue.Declare object at 0x7fa9fc6f4938>
ChannelInvalidStateError - <Channel: "3"> closed

(尽管使用connection_robust似乎这些通道不再恢复健康)。 他们是否与Rabbitmq服务器有关(我的意思是应该在服务器中进行任何配置)还是缺少其他内容。我只是想在发布消息时获得最高的吞吐量,而不必担心是否已收到它们。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...