zoukankan      html  css  js  c++  java
  • RabbitMQ

    前言:为何使用交换机 Exchanges?

    在简单模式和工作模式中,生产者发布一个消息,会通过默认路由,路由到一个队列中,只能被一个消费者消费,不能重复消费。

    如果想让一个消息被多个消费者消费,就需要通过交换机exchanges将消息路由routing到多个队列中即可。这就是发布订阅模式。

    一、Exchanges 的概念

      

    二、Exchanges 的类型

    2.1 无名交换机(默认)

    2.2 扇出交换机 Fanout (RoutingKey为空,广播)

    生产者发布的消息,到达扇出交换机后,会推送到所有和交换机绑定的队列上(此时的RoutingKey就是空字符串“”)--本质就是广播

    系统有个默认的Fanout扇出交换机。

      

    消费者代码

      

    生产者代码

    2.3 直接交换机 Direct(RoutingKey不同)

    实战:log4j不同层级的log信息,储存在不同的文件中

      

    消费者C2代码

    消费者C1代码

    生产者P代码

    2.4 主题交换机 Topic(RoutingKey出现通配符)

      

    三、交换机和队列的绑定Binding

    3.1 新建队列

    3.2 新建交换机

    3.3 两者绑定

  • 相关阅读:
    模板实参推断
    Koa2介绍及环境搭建
    nodejs之http.request
    nodejs请求json数据
    nodejs之url模块
    Nodejs之querystring 查询字符串
    将导航条设置成透明的
    10.12.1 安装cocoapods及使用详解
    UIViewAnimation动画
    iPhone屏幕尺寸、分辨率及适配
  • 原文地址:https://www.cnblogs.com/frankcui/p/14992916.html
Copyright © 2011-2022 走看看