zoukankan      html  css  js  c++  java
  • RabbitMQ路由类型

    关于RabbitMQ的Exchange类型

    参考地址:《RabbitMQ学习系列(四): 几种Exchange 模式

    github地址:https://github.com/ChenWes/RabbitMQDemo

    相关学习笔记:http://note.youdao.com/noteshare?id=7032b8a9e33c80880aa13b36f5d145b7&sub=7C55EC68CCB0442B9872A0345B92A6D2

    • 手动测试过,Direct和Fanout两种路由模式下,Queue都可以有多个接收者,如果有多个接收者监控同一个Queue,那么会轮流将消息发送至接收者
    • Fanout路由模式下,关键在于路由,如果将路由与多个Queue进行绑定,则会多个Queue的接收者同时收到消息(同一个Queue多个接收者的情况依然会存在)

    Direct Exchange:

    所有发送到Direct Exchange的消息被转发到RouteKey中指定的Queue
    注意:Direct模式可以使用RabbitMQ自带的Exchange:default Exchange,所以不需要将Exchange进行任何的绑定(binding)操作,消息传递时,RouteKey必须完全匹配才会被队列接收,否则该消息会被抛弃


    Fanout Exchange:

    不处理路由键,只需要简单的将队列绑定到交换机上
    发送到交换机的消息都会被转发到与该交换机绑定的所有队列上
    Fanout交换机转发消息是最快的


    Topic Exchange:

    所有发送到Topic Exchange的消息被转发到所有关心RouteKey中指定Topic的Queue上
    Exchange将RouteKey和某Topic进行模糊匹配,此时队列需要绑定一个Topic
    注意:可以使用通配符进行模糊匹配
    符号“#”匹配一个或多个词
    符号“*”匹配不多不少一个词(只能匹配一个词)
    例如“log.#”能匹配到“log.info.oa”
    "log.*"只会匹配到"log.error"

  • 相关阅读:
    Wedding(2-SAT)
    JSOI2010 满汉全席
    2-SAT问题
    Tarjan求桥
    遥远的国度
    NOIP2014 联合权值
    部落冲突
    仓鼠找sugar
    2018.09.09 DL24 Day2总结
    php一些易犯的错误
  • 原文地址:https://www.cnblogs.com/weschen/p/10400781.html
Copyright © 2011-2022 走看看