RabbitMQ消息发送确认与消息接收确认机制YML配置
rabbitMQ开启消息发送与消息确认机制
旧版本
在网上找到的配置文件, 本地使用时配置显示错误, 原因是我使用的jar包版本过高
spring:
rabbitmq:
#服务器ip
host: 127.0.0.1
#端口号
port: 5672
#用户名
username: admin
#密码
password: 123456
#开启消息发送确认机制,默认为false
#如果没有本条配置信息,当消费者收到生产者发送的消息后,生产者无法收到确认成功的回调信息
publisher-confirms: true
#支持消息发送失败返回队列,默认为false
publisher-returns: true
#虚拟空间地址
virtual-host: /
新版本
我使用的jar包版本
<dependency>
<groupId>org.springframework.amqp</groupId>
<artifactId>spring-rabbit</artifactId>
<version>2.2.5.RELEASE</version>
</dependency>
yml文件配置
#配置rabbitmq的安装地址、端口以及账户信息
server:
port: 8080
spring:
application:
name: spirng-boot-rabbitmq
rabbitmq:
#服务器ip 你自己mq服务器地址
host: 127.0.0.1
#端口号
port: 5672
#用户名
username: 123
#密码
password: 123
#虚拟空间地址
virtual-host: /
# 对于ReturnCallback来说:
# exchange到queue成功,则不回调return
# exchange到queue失败,则回调return(需设置mandatory=true,否则不回回调,消息就丢了)
# 比如路由不到队列时触发回调
publisher-returns: true
# 对于ConfirmCallback来说:
# 如果消息没有到exchange,则confirm回调,ack=false
# 如果消息到达exchange,则confirm回调,ack=true
publisher-confirm-type: correlated
#消息确认机制 --- 是否开启手ack动确认模式 manual 开启
listener:
simple:
acknowledge-mode: manual