rabbitmq Direct交换机简介
在实际开发中,需求可能变得复杂,如消息的收发和处理。以支付系统为例,成功支付后需要改变订单状态并通知用户,而失败则不需要。为处理这种情况,提出了使用Direct交换机,它可以根据规则将消息路由到指定队列。绑定队列时,需要约定一个暗号,以确定消息的处理对象。如果同一个队列绑定到相同的键,那么所有消息都将发送给该队列,实现了定向广播的效果。这种交换机模式更加灵活,可以根据配置实现不同的定向效果。
创建一个direct类型的交换机
创建两个队列,再绑定上Routing Key
单元测试,根据交换机和Routing Key的关键字,创建消息到消息到交换机中
交换机发现两个队列都绑定了red这个key,然后发现两个消费者都对该消息进行了消费
上图可以看到,当发送的消息key指定为blue时,只有队列1收到了消息,且只有消费者1进行处理消息