RabbitMq 3.8 上的 EasyNetQ 经典队列
EasyNetQ classic queue on RabbitMq 3.8
由于 RabbitMq 版本 3.8.0 队列默认使用 x-queue-type: classic 创建,这似乎导致 EasyNetQ 出错。
运行 以下代码段将触发错误
this.bus.Receive(queueName, onMessage);
错误
The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=406, text='PRECONDITION_FAILED - inequivalent arg 'x-queue-type' for queue 'TheQueue' in vhost '/': received none but current is the value 'classic' of type 'longstr'', classId=50, methodId=10
我做了一些测试,我知道问题出在队列类型上,我希望能够将 EasyNetQ 连接到这种队列,但我在文档中找不到关于如何操作的任何参考这个。
感谢您报告此事。这实际上是 RabbitMQ 中的一个错误。如果您想继续,我创建了一个问题报告 here。该修复程序将在版本 3.8.2
.
中发布
注意: RabbitMQ 团队监控 rabbitmq-users
mailing list 并且有时只在 Whosebug 上回答问题。
在 3.8.0 中遇到同样的问题。
我在 3.8.23 中验证 - 问题已解决。
我正在关注本教程。
https://medium.com/swlh/guide-to-nest-js-rabbitmq-microservices-e1e8655d2853
它确实明确提到使用 3.8.2。还是累了3.8.0,遇到了issue
由于 RabbitMq 版本 3.8.0 队列默认使用 x-queue-type: classic 创建,这似乎导致 EasyNetQ 出错。
运行 以下代码段将触发错误
this.bus.Receive(queueName, onMessage);
错误
The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=406, text='PRECONDITION_FAILED - inequivalent arg 'x-queue-type' for queue 'TheQueue' in vhost '/': received none but current is the value 'classic' of type 'longstr'', classId=50, methodId=10
我做了一些测试,我知道问题出在队列类型上,我希望能够将 EasyNetQ 连接到这种队列,但我在文档中找不到关于如何操作的任何参考这个。
感谢您报告此事。这实际上是 RabbitMQ 中的一个错误。如果您想继续,我创建了一个问题报告 here。该修复程序将在版本 3.8.2
.
注意: RabbitMQ 团队监控 rabbitmq-users
mailing list 并且有时只在 Whosebug 上回答问题。
在 3.8.0 中遇到同样的问题。 我在 3.8.23 中验证 - 问题已解决。 我正在关注本教程。 https://medium.com/swlh/guide-to-nest-js-rabbitmq-microservices-e1e8655d2853 它确实明确提到使用 3.8.2。还是累了3.8.0,遇到了issue