常见消息模型及基本消息队列(basicQueue)
一、常见消息模型
RabbitMQ的官网提供了几个入门案例,对应了几种不同的消息模型:
1.基本消息队列(BasicQueue)
2.工作消息队列(WorkQueue)
发布订阅(Publish、Subscribe),又根据交换机类型不同分为三种:
3.Fanout Exchange:广播
4.Direct Exchange:路由
5.Topic Exchange:主题
二、HelloWorld案例
1.初识
HelloWorld是基于最基础的消息队列模型来实现的,只包括三个角色:
1.
publisher
:消息发布者,将消息发送到队列 queue
2.queue
:消息队列,负责接受并缓存消息
3.consumer
:订阅队列,处理队列中的消息
2.下载资料
将最上方的 mq-demo 项目下载到本地
3.导入工程
通过 IDEA 打开刚刚下载的 mq-demo 项目,其中父工程中主要是用来做依赖管理的,consumer 是消费者, publisher 是发布者。
4.详解代码
父工程中引入的依赖有:
<!--AMQP依赖,包含RabbitMQ-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-amqp</artifactId>
</dependency>
<!--单元测试-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
发布者代码:
package cn.itcast.mq.helloworld;
import com.rabbitmq.client.Channel;
import com.rabbitmq.c