前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >RabbitMQ学习系列教程六:Fanout Exchange的使用

RabbitMQ学习系列教程六:Fanout Exchange的使用

原创
作者头像
凯哥Java
修改2019-07-15 11:32:34
7280
修改2019-07-15 11:32:34
举报
文章被收录于专栏:凯哥Java

Fanout Exchange:

不处理路由键,只需要简单的将队列绑定到交换机上。

发送到交换机的消息都会被转发到该交换机绑定的所有队列上

Fanout交换机转发消息是最快的。

Fanout Exchange交换机可以简单的理解为广播站。

上面几句话,在生活中有个很常见的示例:在大学中,我们知道每天都会有广播站放出美妙的音乐。广播站是面向全校所有师生的,所有它的消息转发的是最快的。

运行示意图:

代码演示:

生产者:

在生产者,我们只是声明了交换机名称。不用声明routingkey的值。

接下来我们来看看消费者端代码:

在消费者端代码中,我们同样没有设置routingkey的值。

启动查看:

先启动consumer端,到页面中查看queues列表:

点击进去查看绑定的交换机:

其中 routingkey是空的。

我们启动生产者,看看:

启动生产者之后,消费者获取到信息:

生产者发送消息及绑定的队列:

我们发现,生产者的routingkey也是空。

问题:是不是因为我们在代码中没有设置routingkey 所有不会有?

那么我们修改代码:

修改生产者的routingkey:

消费者的routingkey依然为空:

在页面中查看:

Queues:

Exchange:

我们发现,就算我们修改了生产者的routingkey,页面上依然是空的。

启动生产者和消费者。查看消费者是否消费了:

消费成功。说明,fanout类型的交换机和routingkey无关。正是因为和routingkey无关。所以这种方式是最高效的。

下节预告:下一节,我们将讲解rabbitmq的另外一个概念:Bingding—绑定

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Fanout Exchange:
    • 运行示意图:
    • 代码演示:
      • 生产者:
        • 接下来我们来看看消费者端代码:
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档