生产者:
cloud-stream-provider8801
消费者:
cloud-stream-consumer8802
cloud-stream-consumer8003
配置了分组之后自动支持持久化:
1、8802配置(不配group):
server:
port: 8802
spring:
application:
name: cloud-stream-consumer
cloud:
stream:
binders:
defaultRabbit:
type: rabbit
environment:
spring:
rabbitmq:
host: 47.56.236.87
port: 5672
username: admin
password: admin
bindings:
input:
destination: studyExchange
content-type: application/json
binder: defaultRabbit
eureka:
client:
service-url:
defaultZone: http://eureka7001.com:7001/eureka, http://eureka7002.com:7002/eureka
2、8803配置(配group):
server:
port: 8803
spring:
application:
name: cloud-stream-consumer
cloud:
stream:
binders:
defaultRabbit:
type: rabbit
environment:
spring:
rabbitmq:
host: 47.56.236.87
port: 5672
username: admin
password: admin
bindings:
input:
destination: studyExchange
content-type: application/json
binder: defaultRabbit
group: A
eureka:
client:
service-url:
defaultZone: http://eureka7001.com:7001/eureka, http://eureka7002.com:7002/eureka
3、访问:http://localhost:8801/sendMessage 发送消息(8802、8803都未启动(模拟宕机))
4、启动8802和8803
由于8802没有配置group,那么重启后不会接收到宕机期间的消息,造成了消息的丢失!!
而8803配置了group自动支持了持久化,那么重启服务后会重新接收到消息。

SpringCloud 实战二十六:Stream消息持久化
恭喜注册成功,快来登录吧!