RabbitMQ(三) 微服务 RabbitMQ 入门案例

一、创建案例项目

 打开 https://start.spring.io/  ,在“Dependencies”中搜索RabbitMQ和web,生成spring-boot项目

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第1张图片

点击生成按钮,即下载了一个包含RabbitMQ的项目。

然后导入到Eclipse中。

二、配置RabbitMQ的配置文件

在 application.properties 文件里配置上一篇文章中安装的RabbitMQ的信息,如下图

注:这里的端口号是5672,不是上篇中的访问管理后台页面的端口号。

三、消息队列基础知识。

 1 Provider
      消息生产者,就是投递消息的程序。
2 Consumer
       消息消费者,就是接受消息的程序。
3 没有使用消息队列时消息传递方式

   RabbitMQ(三) 微服务 RabbitMQ 入门案例_第2张图片

4 使用消息队列后消息传递方式

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第3张图片

5 什么是队列?
     队列就像存放了商品的仓库或者商店,是生产商品的工厂和购买商品的用户之间的中转站
6 队列里存储了什么?
     在rabbitMQ 中,信息流从你的应用程序出发,来到Rabbitmq 的队列,所有信息可以只存储在

     一个队列中。队列可以存储很多信息,因为它基本上是一个无限制的缓冲区,前提是你的机器有足够的存储空间。

7 队列和应用程序的关系?
     多个生产者可以将消息发送到同一个队列中,多个消息者也可以只从同一个队列接收数据。

四、创建消息队列

由上面的基础知识可知,消息的队列,其实就是生产者和消费者的中间桥梁。先创建消息队列,并且项目启动时就应创建好。

QueueConfig.class

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第4张图片

注意:这里的Queue 导入的是org.springframework.amqp.core.Queue;

五、创建生产者

Sender.class

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第5张图片

AmqpTemplate : spring 封装的MQ的模版,直接调用即可。

六、创建消费者

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第6张图片

通过注解@RabbitListener 监听消息队列;此注解里的参数queues 可以使用数据格式放入多个消息队列名称,可以监听多个消息队列。

注:创建的消息队列、生产者、消费者的队列名称必须一一对应。

七、测试

代码如下

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第7张图片

注入生产者Sender。每隔2秒钟向队列里发送一个消息,消息内容是当前的时间,共发送10次。

运行后,控制台打印如下。

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第8张图片

同时,查看RabbitMQ的guan管理后台,会发现多了一个同名队列 “hello-queue”。

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第9张图片

RabbitMQ(三) 微服务 RabbitMQ 入门案例_第10张图片

你可能感兴趣的:(微服务)