如何防止 rabbitmq 服务器中的消息重新排队?

how to prevent message re-queue within rabbitmq server?

我正在使用直接交换将消息发布到带有路由键的特定队列,所有这些都是在 rabbit-server 中配置的,而不是代码,我正在使用 spring 微服务消费消息,然后在接收方法,然后消息重新排队导致循环,所以我想用 rabbit-server 添加一个策略以防止这种重新排队,是否可以在将队列与特定路由密钥的交换绑定时作为参数添加,或者它应该是一项政策?

默认情况下出现任何异常时 spring 发送 nack 并重新排队 "true"。如果在您的 spring 消费者应用程序中您想要发送 requeue false,则抛出异常 "AmqpRejectAndDontRequeueException"。所以你的消费者代码应该看起来像这样:

`void onMessage(){
  try{
    // Your Code Here
  } catch(Exception e){
     throw new AmqpRejectAndDontRequeueException();
  }
}`