使用Spring AMQP,当对方法rabbitTemplate.send(message)
的调用返回(来自org.springframework.amqp.rabbit.core.RabbitTemplate类)时,我们可以确定消息已在RabbitMQ集群上传递并复制了吗?
最佳答案
不,不是的。 AMQP是异步协议。为了保证交付,您需要使用Publisher Confirms and Returns-即使这样,确认(或返回)也会在另一个线程上返回。
使用Spring AMQP,当对方法rabbitTemplate.send(message)
的调用返回(来自org.springframework.amqp.rabbit.core.RabbitTemplate类)时,我们可以确定消息已在RabbitMQ集群上传递并复制了吗?
最佳答案
不,不是的。 AMQP是异步协议。为了保证交付,您需要使用Publisher Confirms and Returns-即使这样,确认(或返回)也会在另一个线程上返回。