gpt4 book ai didi

node.js - amqplib - 如何安全地检查队列是否存在

转载 作者:搜寻专家 更新时间:2023-11-01 00:06:04 25 4
gpt4 key购买 nike

我正在使用 nodejs 的 amqplib 库与 RabbitMQ 一起工作。我正在尝试使用函数 checkQueue 来检查队列是否存在:

mychannel.checkQueue('xxx', function (err, ok) { 
console.log(err);
console.log(ok)
});

但它不仅会抛出错误,还会关闭 channel 。如何安全地检查队列是否存在?

最佳答案

您不能不冒破坏 channel 的风险。解决方法是创建一个临时 channel ,您可以使用它来进行检查。

来自 amqp.node dev 的评论:( https://github.com/squaremo/amqp.node/issues/280 )

The behaviour of checkQueue is dictated by the protocol, but it can be worked around. One tactic is to create a "sacrificial" extra channel with which to test whether the queue exists. Once you have the answer, you can throw the extra channel away, or keep it around for more tests.

关于node.js - amqplib - 如何安全地检查队列是否存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39088376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com