原文:http://blog.csdn.net/csethcrm/article/details/51671268

任何发送到Topic Exchange的消息都会被转发到所有关心RouteKey中指定话题的Queue上


1. 这种模式需要RouteKey,要提前绑定Exchange与Queue。


2. 如果Exchange没有发现能够与RouteKey匹配的Queue,则会抛弃此消息。


3. 在进行绑定时,要提供一个该队列关心的主题,如“#.log.#”表示该队列关心所有涉及log的消息(一个RouteKey为”MQ.log.error”的消息会被转发到该队列)。


4. “#”表示0个或若干个关键字,“*”表示一个关键字。如“log.*”能与“log.warn”匹配,无法与“log.warn.timeout”匹配;但是“log.#”能与上述两者匹配。


RabbitMQ Exchange模式之Topic


参考代码:

RabbitMQ Exchange模式之Topic


执行代码:

RabbitMQ Exchange模式之Topic



执行结果:

RabbitMQ Exchange模式之Topic



如果 queue、exchange、routingKey 已经进行过绑定,则第二次执行代码时只需要用到 exchange 和 routingKey


RabbitMQ Exchange模式之Topic


注释掉队列后查看执行结果(2条消息):

RabbitMQ Exchange模式之Topic





查看绑定信息:

RabbitMQ Exchange模式之Topic


相关文章:

  • 2021-11-18
  • 2021-11-30
  • 2021-10-12
  • 2021-10-01
  • 2021-06-03
猜你喜欢
  • 2021-09-26
  • 2021-06-05
  • 2022-12-23
  • 2021-09-11
  • 2021-07-16
  • 2021-11-20
  • 2021-09-12
相关资源
相似解决方案