RabbitTemplate.send() 是否保证将消息传递到 RabbitMQ?

Does RabbitTemplate.send() guarantee the delivery of messages to RabbitMQ?

使用Spring AMQP,当调用方法rabbitTemplate.send(message) returns(来自org.springframework.amqp.rabbit.core.RabbitTemplate class)时,我们可以确定消息已经在 RabbitMQ 集群上交付和复制了吗?

更新:这不是正确答案。请看@GaryRussell

的回答

如果你指的是发布者和 RabbitMQ 之间的唯一通信 好的。除了确保消息存储和复制是 RabbitMQ 工作的一部分之外,您无需执行任何其他操作。

请记得catchAmqpException如果有什么问题发消息!

不,它没有。 AMQP 是一种异步协议。为了保证交付,您需要使用 Publisher Confirms and Returns - 即便如此,确认(或 return)也会在另一个线程上返回。