美文网首页
RabbitMQ交换机Exchanger详解

RabbitMQ交换机Exchanger详解

作者: 宁静的猫 | 来源:发表于2020-01-25 23:49 被阅读0次

    RabbitMQ种的交换机Exchanger的作用是:接受消息,并根据路由键转发消息所绑定的队列。

    1、交换机属性

    Name:交换机名称
    Type:交换机类型,如direct、topic、fanout、headers
    Durability:是否需要持久化,true为持久化
    Auto Delete:当最后一个绑定到Exchanger上的队列删除后,自动删除该Exchanger
    Internal:当前Exchanger是否用于RabbitMQ内部使用,默认为False
    Arguments:扩展参数,用于扩展AMQP协议使用
    

    2、Direct类型

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

    3、Topic类型

    所有发送到TopicExchange的消息都被转发到所有关心RoutingKey中指定Topic的Queue上
    Exchanger将RoutingKey和某Topic进行模糊匹配,此时队列需要绑定一个Topic,匹配规则如下:

    符号"#"匹配一个或多个词
    符号"*"匹配不多不少一个词
    例如:"log.#"能够匹配到"log.info.oa","log.
    "只会匹配到"log.erro"

    发送到1个TopicExchange上的消息,如果匹配了多个Queue,则会向每个匹配的Queue发送此消息

    4、Fanout类型

    Fanout Exchanger 有一下特点:

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

    相关文章

      网友评论

          本文标题:RabbitMQ交换机Exchanger详解

          本文链接:https://www.haomeiwen.com/subject/ymarthtx.html