Rabbitmq---topics模型之动态路由

fanout广播模型,只要生产者一发送,交换机会把所有的消息发给所有的广播者。在广播模式中,++++一条消息会被所有订阅的队列都消费,但是在某种场景下,我们希望不同的消息被不同的队列消费。这时候就要用到direct的类型的交换机。++++

direct类型的的交换机,它的核心作用就是不同的消息可以被不同消费者消费,同时我们也可以让所有的消费者去消费这一个消息,++++生产者向交换机发消息,不能单纯的再发消息了,我在发消息的同时还要指定一个路由key,++++我们可以通过路由++++key++++的不同去决定我们的消息可以被哪些消费者消费。

生产者:

java 复制代码
public class Provider {
    public static void main(String[] args) throws IOException {
        Connection connection = RabbitMQUtils.getConnection();
        Channel channel = connection.createChannel();
        //通道声明指定的交换机 参数1:交换机名称 参数2:交换机类型 fanout广播类型
        // 在交换机不存在的时候创建这个logs交换机
        channel.exchangeDeclare("topics_direct","direct");
        String routingKey = "info";
        channel.basicPublish("topics_direct",routingKey,null,("这是Topics模型发布的,基于route------key").getBytes());
        RabbitMQUtils.closeConnectionAndChanel(channel,connection);
    }
}
相关推荐
兮兮能吃能睡38 分钟前
R语言模型分析(一)(1)
开发语言·r语言
兔兔爱学习兔兔爱学习42 分钟前
Spring Al学习7:ImageModel
java·学习·spring
herobrineAC7891 小时前
Hyperopt 强大的分布式参数优化框架全解析
分布式·其他
明达智控技术2 小时前
MR30系列分布式I/O在造型机产线的应用
分布式·物联网·自动化
lang201509282 小时前
Spring远程调用与Web服务全解析
java·前端·spring
Moniane2 小时前
A2A+MCP构建智能体协作生态:下一代分布式人工智能架构解析
人工智能·分布式·架构
wuk9982 小时前
基于有限差分法的二维平面热传导模型MATLAB实现
开发语言·matlab·平面
m0_564264182 小时前
IDEA DEBUG调试时如何获取 MyBatis-Plus 动态拼接的 SQL?
java·数据库·spring boot·sql·mybatis·debug·mybatis-plus
爱敲键盘的猴子2 小时前
MQ高级 -- RabbitMQ
rabbitmq
ttghgfhhjxkl2 小时前
Windows 系统下 RabbitMQ 延迟插件的安装步骤与常见问题修复
windows·rabbitmq·ruby