【RabbitMQ】——交换机&临时队列&绑定

一、交换机

1. 概念

在上一节中,我们创建了一个工作队列。我们假设的是工作队列背后,每个任务都恰好交付给一个消费者(工作进程)。在这一部分中,我们将做一些完全不同的事情-我们将消息传达给多个消费者。

RabbitMQ消息传递模型的核心思想是:生产者生产的消息从不会直接发送到队列。实际上,通常生产者甚至都不知道这些消息传递传递到了哪些队列中。

生产者只能将消息发送到交换机(exchange),交换机工作的内容非常简单,一方面它接收来自生产者的消息,另一方面将它们推入队列。交换机必须确切知道如何处理收到的消息。是应该把这些消息放到特定队列还是说把他们到许多队列中还是说应该丢弃它们。这就的由交换机的类型来决定。
在这里插入图片描述

2. Exchange类型

直接(direct)、主题(topic)、标题(headers)、扇出(fanout)

3. 无名Exchange

在本教程的前面我们对Exchange一无所知,但是仍然能够将消息发送到队列,之前能实现的原因是我们使用默认的交换机,我们通过字符串(“”)进行表示。
在这里插入图片描述
第一个参数是交换机的名称,空字符串表示默认或者无名交换机:消息能够路由发送到队列其实是由routingKey(bindingkey)绑定key指定的,如果它存在的话

二、临时队列

创建临时队列

String queueName = channel.queueDeclare().getQueue();

三、绑定(bindings)

binding其实是Exchange 和queue之间的桥梁,他告诉我们Exchange和那个队列进行了绑定关系。
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值