| fanout | 广播 |
| topic | 主体,规则匹配 |
Fanout
====================================================================
FanoutExchange 的数据交换策略是把所有到达 FanoutExchang 的消息转发给所有与它绑定的Queue ,在这种策略中, routingkey 将不起任何作用.

1.创建消费者
项目结构
配置文件
spring.application.name=springcloud-mq
spring.rabbitmq.host=192.168.88.150
spring.rabbitmq.port=5672
spring.rabbitmq.username=dpb
spring.rabbitmq.password=123
mq.config.exchange=order.fanout
#短信服务队列名称
mq.config.queue.sms=order.sms
#push 服务队列名称
mq.config.queue.push=order.push
两个消费者
@Component
@RabbitListener(
bindings=@QueueBinding(
value=@Queue(value="${mq.config.queue.sms}",autoDelete=“true”),
exchange=@Exchange(value="${mq.config.exchange}",type= ExchangeTypes.FANOUT)
)
)
public class SmsReciver {
@RabbitHandler
public void process(String msg){
System.out.println("Sms…receiver: "+msg);
}
}
@Component
@RabbitListener(
bindings=@QueueBinding(
value=@Queue(value="${mq.config.queue.push}",autoDelete=“true”),
exchange=@Exchange(value="${mq.config.exchange}",type= ExchangeTypes.FANOUT)
)
)
public class PushReciver {
@RabbitHandler
public void process(String msg){
System.out.println("Push…receiver: "+msg);
}
}
启动后等待接收消息即可~
2.创建订单服务
项目结构
配置文件
spring.application.name=springcloud-mq
spring.rabbitmq.host=192.168.88.150
spring.rabbitmq.port=5672



