RabbitMq直接队列不累积在"Ready"状态?

RabbitMq direct queue that does not accumulate in "Ready" state?

我需要一个不会在 "Ready" 状态下累积的队列。

即如果队列有订阅者,直接把exchange的消息传给它,如果没有订阅者,就把消息浪费掉,不要堆积成"Ready"状态.

我知道 fanout 类型的交换会执行此操作,但我希望能够使用路由密钥,而 fanout 交换会忽略路由密钥。此外,我的场景不是广播场景,它是 1 个发布者和 1 个(有时不存在)订阅者。

如果没有订阅者,是否可以直接交换队列不向其累积消息的 "ready" 状态?

好的,我想我必须用 auto-deletetrue

声明队列

并在 BasicPublish 调用中将 mandatory 位设置为 true

到目前为止似乎有效...