21.Spring-Boot中RabbitMQ使用
注意:默认账号guest具有所有操作的权限,并且出于安全的考虑,guest用户只能通过localhost登录使用,如果想通过远程ip连接,需要重庆创建新的用户。
模式使用的就是direct交换器模式
一:Direct交换器使用
1.配置pom包,主要是添加spring-boot-starter-amqp的支持
2.在application.properties中配置rabbit连接参数
3.队列交换器配置
4.创建消息生成者(发送者)
5.创建消费者(接收者)
接收者1
接收者2
6.测试
7.运行结果
对于Direct模式的交换器,当队列拥有多个消费者时,队列收到的消息将以循环的方式发送给消费者。每条消息只能发送给一个订阅的消费者。
二:Fanout交换器的使用
1.2步同上
3.配置交换器和队列
4.创建消息生成者(发送者)
package com.niugang.mq.send; import org.springframework.amqp.core.AmqpTemplate; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; @Component public class FanoutSender { @Autowired private AmqpTemplate rabbitTemplate; public void send(String context) { System.out.println("Sender : " + context); //因为fanout交换器模式是广播消息,所系这块队列只需要给个空字符串 this.rabbitTemplate.convertAndSend("fanout-exchange","", context); } }
5.创建消费者(接收者)
消费者A:
消费者B:
消费者C:
6..测试
7.运行结果
结果1
结果2
从运行结果来看,fanout交换器广播消息的顺序是随机的。
微信公众号