上一篇博客粗略地说了一下AMQP,它是一个二进制传输协议,基于AMQP的消息模型,比JMS的功能更加丰富,提供了不局限于点对点和发布-订阅等多种模式。这一篇讲的是AMQP的实现:RabbitMQ,以及在Spring中的支持。

RabbitMQ是一个开源的消息代理,它实现了AMQP,而Spring AMQP为RabbitMQ提供了支持,包括了RabbitMQ连接工厂,模板以及Spring配置命名空间等。

我已MacOS系统为例:

1,下载安装HomeBrew,这个百度一大片

2,安装wget,有了HomeBrew这个就很简单了

3,通过wget安装RabbitMQ,我百度的时候感觉会有很多错误,但是实际安装的时候一切顺利,就用了三个命令!没有出现网上说的那些错误

4,启动RabbitMQ,有两种启动方式:1,./rabbit-server,这样启动的话,当你退出终端,就会关闭;2,./rabbitmq-server -detached,后台运行,不会关闭!

启动后访问http://localhost:15672/输入用户名/密码:guest/guest(默认),出现下图表示成功!

Spring消息(2)之AMQP(RabbitMQ)

5,Spring中配置pom文件,引入需要的jar包


Spring消息(2)之AMQP(RabbitMQ)

5,引入RabbitMQ的Spring命名空间

Spring消息(2)之AMQP(RabbitMQ)

6,配置连接工厂


Spring消息(2)之AMQP(RabbitMQ)

7,配置admin,配置的这些信、元素必须与admin一起使用,因为admin元素会创建一个RabbitMQ管理组件,它会自动创建其他元素如exchange、queue以及bindings。


Spring消息(2)之AMQP(RabbitMQ)

8,配置队列queue

Spring消息(2)之AMQP(RabbitMQ)

9,配置exchange,选择合适的算法

Spring消息(2)之AMQP(RabbitMQ)

10,配置模板RabbitTemplate

Spring消息(2)之AMQP(RabbitMQ)

11,配置监听器

Spring消息(2)之AMQP(RabbitMQ)

Spring消息(2)之AMQP(RabbitMQ)

12,编写测试代码Spring消息(2)之AMQP(RabbitMQ)

13,测试:

Spring消息(2)之AMQP(RabbitMQ)

相关文章: