网站建设下单源码莱芜金点子信息港二手市场
news/
2025/9/23 10:31:15/
文章来源:
网站建设下单源码,莱芜金点子信息港二手市场,实惠的网站建设,一建工程类专业对照表参考 【RabbitMQ】RabbitMQ架构模型_rabbitmq结构模型-CSDN博客 之前的学习都只是知道名字#xff0c;但并没有真正的理解#xff0c;每次看还是不懂#xff0c;所以今日理解透 #xff01; RabbitMQ 收发消息过程如下#xff1a; 首先从消费者开始#xff1… 参考 【RabbitMQ】RabbitMQ架构模型_rabbitmq结构模型-CSDN博客 之前的学习都只是知道名字但并没有真正的理解每次看还是不懂所以今日理解透 RabbitMQ 收发消息过程如下 首先从消费者开始
每个消费者都有一个自己的队列每个消费者都从自己的队列中取消息 消费。 消费者代码表示如下
直接就是监听一个队列
org.springframework.amqp.rabbit.annotation.RabbitListener 生产者将消息发给交换机交换机将消息发给 队列
下图p 为生产者x 为交换机 消费者不与队列交互只给交换机发送交换机再把消息转发给指定队列消费者监听到自己的队列有消息了就可以消费了。 那么 交换机如何知道要把 消息转发给 那个或哪些队列呢
首先可能存在多个交换机所以 队列是需要绑定到交换机的交换机转发消息时 可选择的队列列表 只能是绑定到它的 队列。 然后怎么知道转发到哪个队列呢
这得看交换机类型Fanout 广播、Direct 定向、Topic 通配符
1. Fanout 广播交换机
广播就是将消息转发给 绑定到该交换机的 全部队列上。 2. Direct 定向交换机 模型如上
首先 队列绑定到交换机的时候 需要同时指定一个 bindingKey
如图C1 的 bindingKey 是 error C2 的 bindingKey 是 info、error、warning
然后生产者发送消息的时候就要传这个值了比如 传一个 info那么 交换机就会把消息转发给 绑定了 info 的队列 C2 上。
生产者传的这个值 叫做 routingKey 路由key
消费者绑定交换机的值叫做 bindingKey 绑定key 所以消费者最终发的消息是消息要发给哪个交换机的哪个 bindingKey 的队列上。
消费者传参时参数叫做 routingKey实际上是和 bindingKey 相等的叫法不同 3. Topic 通配符交换机 通配符交换机可以解析 routingKey 上的通配符来转发消息 看看代码如何表示以上关系
1. 定义交换机
直接通过Builder 可以构造出不同类型的交换机 2. 定义队列 3. 队列和交换机绑定 4. 发送消息 如图发了一个延迟消息
发送消息时第一个参数指定交换机第二个参数指定routingKey第三个参数为要发送的消息内容
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/912217.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!