RabbitMQ(基础概念, 简单使用)(下)

简介: RabbitMQ(基础概念, 简单使用)

RabbitMQ(基础概念, 简单使用)(中):https://developer.aliyun.com/article/1518407


Direct 交换机

Direct 模型下, 队列与交换机的绑定会指定一个 RoutingKey(路由key)

消息的发送方在向 Exchange 发送消息时吗也必须指定消息的 RoutingKey

Exchange 会将消息交给具有相同 RoutingKey 的队列

创建交换机

创建队列

将交换机和队列进行绑定 (填写 RoutingKey)

消息接收

此时会发现, 对于不同的消息发送, 会有不同的处理

当 RoutingKey 为 red 时, 两个消费者都会进行消息处理

当 RoutingKey 为 green / blue 时, 只有绑定对应的 RoutingKey 的消费者都会进行消息处理

Tocpic 交换机

和 Direct 交换机基本类似, 但是绑定的 RoutingKey 可以使用通配符

通配符规则:

  • #:匹配一个或多个词
  • *:匹配不多不少恰好1个词

创建 tocpic 交换机

创建队列

将 topic 交换机与 队列 进行路由绑定

消息发送

消息接收

消息处理

声明队列和交换机

使用 Spring AMQP 提供的 API 来声明队列和交换机, 而不是使用 RabbitMQ 控制台来操作

使用 ExchangeBuilder 来创建队列和交换机

绑定队列和交换机

Fanout 实例

写一个类声明交换机和队列

运行 publisher 后, 可以在控制台看到 队列, 交换机, 绑定 都已完成

Direct示例 (Topic 与其几乎完全相同)

写一个类声明交换机和队列


运行 publisher 后, 可以在控制台看到 队列, 交换机, 绑定 都已完成

基于注解声明

由于要绑定多个 key 的情况, 基于 @Bean 的方式声明队列和交换机会很麻烦, 因此 Spring AMQP 提供了注解的方式来声明 交换机和队列

Fanout 示例

在消费的同时声明 Fanout 交换机和队列

运行 publisher 后查看 RabbitMQ 控制台

Direct示例 (Topic 与其几乎完全相同)

在消费的同时声明 Fanout 交换机和队列

运行 publisher 后查看 RabbitMQ 控制台


相关实践学习
RocketMQ一站式入门使用
从源码编译、部署broker、部署namesrv,使用java客户端首发消息等一站式入门RocketMQ。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
1月前
|
消息中间件 中间件 数据安全/隐私保护
RabbitMQ 的核心概念
RabbitMQ 的核心概念
21 2
|
14天前
|
消息中间件 存储 物联网
RocketMQ基础概念
RocketMQ基础概念
21 1
|
27天前
|
消息中间件 存储 Apache
RocketMQ实战教程之常见概念和模型
Apache RocketMQ 实战教程介绍了其核心概念和模型。消息是基本的数据传输单元,主题是消息的分类容器,支持字节、数字和短划线命名,最长64个字符。消息类型包括普通、顺序、事务和定时/延时消息。消息队列是实际存储和传输消息的容器,是主题的分区。消费者分组是一组行为一致的消费者的逻辑集合,也有命名限制。此外,文档还提到了一些使用约束和建议,如主题和消费者组名的命名规则,消息大小限制,请求超时时间等。RocketMQ 提供了多种消息模型,包括发布/订阅模型,有助于理解和优化消息处理。
|
1月前
|
消息中间件 存储 Java
RabbitMQ(基础概念, 简单使用)(中)
RabbitMQ(基础概念, 简单使用)
13 0
|
1月前
|
消息中间件 存储 中间件
RabbitMQ(基础概念, 简单使用)(上)
RabbitMQ(基础概念, 简单使用)
35 0
|
1月前
|
消息中间件 安全 Java
一文读懂RabbitMQ核心概念及架构
一文读懂RabbitMQ核心概念及架构
|
1月前
|
消息中间件 存储 JSON
从兔子说起:深入理解RabbitMQ基础概念【RabbitMQ 一】
从兔子说起:深入理解RabbitMQ基础概念【RabbitMQ 一】
41 0
|
1月前
|
消息中间件 缓存 运维
java消息队列基础和RabbitMQ相关概念(二)
java消息队列基础和RabbitMQ相关概念
57 0
|
1月前
|
消息中间件 存储 Java
java消息队列基础和RabbitMQ相关概念(一)
java消息队列基础和RabbitMQ相关概念
51 0
|
1月前
|
消息中间件 存储 负载均衡
RocketMQ基本概念
RocketMQ基本概念
44 0

热门文章

最新文章