zoukankan      html  css  js  c++  java
  • RabbitMQ学习第四章:publish_subscribe发布订阅模式

    publish_subscribe发布订阅模式

    模型:

    解读:

    1.一个生产者,多个消费者。

    2.每一个消费者都有自己的队列。

    3.生产者没有直接把消息发送到队列,而是发到了交换机exchangeX)。                                                                                                                 

    4.每个队列都要绑定到交换机。

    5.生产者发送的消息经过交换机,然后到达队列,就能实现一个消息被

    多个消费者消费。

    例:声明交换机(生产者)

    public static final String EXCHANGE_NAME="test_exchange_fanout";

    图中将消息发送到了交换机,控制台中也显示了发送的消息,并且RabbitMQ

    控制台也新添加了一个我命名的交换机,但是消息发送到交换机之后去哪了?

    已经丢失了!!!因为交换机没有存储的能力,在RabbitMQ里面只有队列有

    存储的能力,这时候队列还没有绑定交换机,所以消息丢失了。

    队列绑定交换机:

    消费者1:

    消费者2:

    消费者1和消费者2都绑定了 EXCHANGE_NAME="test_exchange_fanout"的交换机,将消息

    发送到交换机时候,实现了一个消息被多个消费者消费,如图:

     

     

    控制台查看到交换机绑定的队列:

  • 相关阅读:
    模拟器安装.apk包_夜神模拟器
    SDK安装报错_2019
    Jenkins安装插件方法
    Jenkins安装
    Python项目第三方库安装_pip freeze命令
    深入理解Java虚拟机—内存分配
    深入理解Java虚拟机—垃圾回收 下
    深入理解Java虚拟机—垃圾回收 上
    深入理解Java虚拟机—OutOfMemoryError异常
    深入理解Java虚拟机—Java内存区域
  • 原文地址:https://www.cnblogs.com/red-star/p/12520880.html
Copyright © 2011-2022 走看看