RabbitMQ消息队列快速开始
RabbitMQ消息队列快速开始
版本介绍
springboot版本:2.2.3.RELEASE
创建一个队列 (Queues) 名称,交换器 (Exchanges)用点对点 (direct) 绑定队列名称
案例 :保存数据的时候,正常添加数据库,但是添加elasticsearch的时候, 使用RabbitMQ中间键去执行;消息队列会有监听,监听到执行添加elasticsearch
1,依赖
<dependency> <groupId>org.springframework.amqp</groupId> <artifactId>spring-rabbit-test</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.springframework.amqp</groupId> <artifactId>spring-rabbit</artifactId> </dependency>
2,业务实现类使用消息队列
-
注入使用的接口
@Resourceprivate AmqpTemplate template;
-
此刻在添加数据实现方法内,执行完添加mysql ,添加消息队列
//queues队列名 -- 数据template.convertAndSend("elasticsearch",houseinfoVO);
-
消息队列监听,监听到即执行
/** * rabbitMQ * @param houseinfoVO */@RabbitListener(queues = "elasticsearch")@Overridepublic void esAdd(HouseinfoVO houseinfoVO) { System.out.println("houseinfoVO =================数据=============== " + houseinfoVO); HouseinfoVO save = houseResporty.save(houseinfoVO);}
- 直接(direct) ----点对点
- 主题(topic) ----模糊匹配
- 扇出(fanout)----广播