1.新建虛擬主機,用於區分不同的環境,如開發環境dev,測試環境uat,生產環境prod:
2.配置中需要配置虛擬主機:
spring.rabbitmq.port = 5672
spring.rabbitmq.username = admin
spring.rabbitmq.password = Aegon_2018
spring.rabbitmq.virtual-host = /fec-uat
spring.rabbitmq.host = rabbitmq-fec.dev
3.一般是一個服務對應一個隊列:
4. 綁定路由:
5. 集成springcloud bus的配置
spring.rabbitmq.publisher-confirms = true spring.cloud.stream.default-binder = rabbit spring.cloud.stream.bindings.springCloudBusInput.destination = springCloudBus.fec-uat spring.cloud.stream.bindings.springCloudBusInput.group = fec-uat-${spring.application.name} spring.cloud.stream.bindings.springCloudBusOutput.destination = springCloudBus.fec-uat spring.cloud.stream.bus.enabled = true spring.cloud.stream.bus.trace.enabled = true
6. 交換機(Exchange)配置:
三種Exchange 特性:
direct: 直連式,指定的rountingkey要與消費方完全一致纔行。
topic: 主題模式,主要可以使用# 和* 來進行匹配,*只能一級匹配,#可以多級匹配。 如rabbit.# 可以匹配,rabbit.first.second。
fanout: 全綁定式, 只要交換機與隊列發生了綁定的關係,那麼就會生產者發送的消息將會路由到所有的消息的隊列。