RabbitMQ-Exchange交换器
交换器分类 RabbitMQ的Exchange(交换器)分为四类: direct(默认) headers fanout topic 其中headers交换器允许你匹配AMQP消息的header而非路由键,除此之外headers交换器和direct交换器完全一致,但性能却很差,几乎用不到,所以我们本文也不做讲解。 注意: fanout、topic交换器是没有历史数据的,也就是说对于中途创建的队列,获取不到之前的消息。 1、direct交换器 direct为默认的交换器类型,也非常的简单,如果路由键匹配的话,消息就投递到相应的队列,如图: 使用代码:channel.basicPublish("", QueueName, null, message)推送direct交换器消息到对于的队列,空字符为默认的direct交换器,用队列名称当做路由键。 direct交换器代码示例 发送端: Connection conn = connectionFactoryUtil.GetRabbitConnection(); Channel channel = conn.createChannel(); // 声明队列【参数说明:参数一:队列名称,参数二:是否持久化;参数三:是否独占模式;参数四:消费者断开连接时是否删除队列;参数五:消息其他参数】 channel.queueDeclare(config