RabbitMQ的使用--以topic路由为例

 

Rabbit界面操作

  1. 新建队列:输入Name -> 添加队列

  2. 新建交换机:输入Name -> 选择Type -> 添加交换机

  3. 交换机绑定队列:选择交换机 -> 选择队列 -> 输入Routing Key -> 绑定

     

SpringBoot中:

首先要明确:生产者只负责给交换机发送数据,消费者只负责从队列中获取数据。
生产者代码:
复制代码
@Controller
@RequestMapping("/publisher")
@RequiredArgsConstructor
public class rabbitMQPublisher {
    final RabbitTemplate rabbitTemplate;
    @PostMapping("/send")
    public Result sendMessage(@RequestParam String routingKey,@RequestParam String message) {
        String exchangeName = "Rabbit.topic";
        rabbitTemplate.convertAndSend(exchangeName,routingKey, message);
        return Result.ok();
    }

}
复制代码

消费者代码:

复制代码
@Component
@Slf4j
public class rabbitMQCosumer {
    @RabbitListener(queues = "topic.queue1")
    public void consume1(String msg) {
        log.debug("consume1接收到消息:{}",msg);
    }

    @RabbitListener(queues = "topic.queue2")
    public void consume2(String msg) {
        log.debug("consume2接收到消息:{}",msg);
    }
}
复制代码

 

posted @   梁哲  阅读(46)  评论(0编辑  收藏  举报
努力加载评论中...
点击右上角即可分享
微信分享提示