首页 > 编程语言 > 详细

springboot消息之利用docker安装rabbitmq并测试三种模式

时间:2020-02-11 13:14:02      阅读:125      评论:0      收藏:0      [点我收藏+]

1、安装rabbitmq

还是利用之前安装好的docker进行安装。

sudo docker pull rabbitmq:3-management

sudo docker run --name rabbitmq01 -p 5672:5672 -p 15672:15672 -d rabbitmq:3-management

sudo docker ps -a

安装完成后在浏览器输入:虚拟机系统ip地址:15672即可访问到rabbitmq界面:输入默认账户:guest,密码:guest

技术分享图片

 

技术分享图片

2、建立交换器

选择exchanges, 选择Add a new exchange:

技术分享图片

技术分享图片

技术分享图片

点击添加之后会看到:

技术分享图片

3、添加消息队列

选择Queues,选择Add a new queue

技术分享图片

只需要更改名字,其余默认即可。依次添加gong、gong.news、gong.emps、dema.news ,完成后可以看到:

技术分享图片

4、将交换器和队列进行绑定

点击刚才我们创建好的交换器,例如选择exchange.direct:

技术分享图片

找到bindings,然后进行设置:

技术分享图片

依次将那四个队列进行绑定,名字和Routing Key都一致就行。完成之后可以看到

技术分享图片

同理将exchange.fanout也绑定这四个队列。

对于exchange.topic,我们就需要指定了。

技术分享图片

5、发送消息

点击Exchanges,选择exchange.direct交换器,找到Publish Message

技术分享图片

发送即可。由于direct模式是完全匹配,所以只有Routing key=gong的队列收到消息:

技术分享图片

点击gong进去看看,找到Get messages:

技术分享图片

再来测试fanout模式:不管你指定的Routing key是什么,都会发送给所有队列:

技术分享图片

 最后来测试topic模式,其会根据匹配规则进行发送。

技术分享图片

技术分享图片

技术分享图片

收到以gong开头的,或者以news结尾的,也就是所有队列都可以收到。假设我们发送的Routing key是hello.news,那么,只有gong.news和dema.news的队列收到消息。具体direct、fanout、topic之间的区别可以去看之前的博客。

springboot消息之利用docker安装rabbitmq并测试三种模式

原文:https://www.cnblogs.com/xiximayou/p/12294468.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!