springboot整合rabbitmq使用示例

文章目录

  • 系列文章目录
    • Springboot集成Netty
    • Springboot集成Rabbitmq
    • Springboot集成Retry
    • springboot集成websocket
    • Springboot集成Redis
    • springboot整合rabbitmq使用示例
  • 一 消息队列四种模式
    • 1 work模式
      • 1.1 示例
    • 2 fanout模式
      • 2.1 示例
    • 3 direct模式
      • 3.1 示例1
      • 3.2 示例2
    • 4 topic模式
      • 4.1 示例1
      • 4.2 示例2
  • 二、源代码地址

系列文章目录

Springboot集成Netty

Springboot集成Rabbitmq

Springboot集成Retry

springboot集成websocket

Springboot集成Redis

springboot整合rabbitmq使用示例



一 消息队列四种模式

1 work模式

img

也称为工作模式,多劳多得,有能力的消费者能够消费更多的消息。

不需要交换机的支持,消息直接发送到队列即可。

1.1 示例

springboot整合rabbitmq使用示例_第1张图片
springboot整合rabbitmq使用示例_第2张图片

2 fanout模式

img

也称为广播模式,表如其意,消息一次发送可以经过多个队列被多个消费者共同消费。

需要交换机(图中的X)与队列进行绑定,消息发送到交换机,由交换机代理转发到与其绑定的消息队列。

2.1 示例

springboot整合rabbitmq使用示例_第3张图片
springboot整合rabbitmq使用示例_第4张图片

3 direct模式

img

带路由key的广播模式,需要交换机(图中的X),队列以及路由key(图中的error、info等)进行绑定,如此以来,消息发送者携带的路由key就会发送到相应的消息队列中,消费者消费相应的监听队列消息。

3.1 示例1

springboot整合rabbitmq使用示例_第5张图片
springboot整合rabbitmq使用示例_第6张图片

3.2 示例2

springboot整合rabbitmq使用示例_第7张图片
springboot整合rabbitmq使用示例_第8张图片

4 topic模式

img

带路由key的广播模式+通配符路由key,需要交换机(图中的X),队列以及通配符路由key(图中的lazy.*等)进行绑定,如此以来,消息发送者携带的路由key就会根据通配符规则发送到相应的消息队列中,消费者消费相应的监听队列消息。

通配符规则

①*(星号)仅代表一个单词
②#(井号)代表任意个单词

4.1 示例1

springboot整合rabbitmq使用示例_第9张图片
springboot整合rabbitmq使用示例_第10张图片

4.2 示例2

springboot整合rabbitmq使用示例_第11张图片
springboot整合rabbitmq使用示例_第12张图片

二、源代码地址

https://gitee.com/teajoy/springboot-modules/tree/master/springboot-rabbitmq

你可能感兴趣的:(springboot,rabbitmq,rabbitmq,spring,boot,java)