SpringCloud 实战二十六:Stream消息持久化

  作者:记性不好的阁主

生产者:

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自动支持了持久化,那么重启服务后会重新接收到消息。




相关推荐

评论 抢沙发

表情

分类选择