RabbitMQ架构

RabbitMQ架构设计

  1. Producer:负责产生消息。

  2. Connection:RabbitMQ客户端和代理服务器之间的TCP连接。

  3. Channel:建立在连接之上的虚拟连接,RabbitMQ操作都是在信道中进行。

  4. Broker:一个Broker可以看做一个RabbitMQ服务节点或者服务实例。

  5. Exchange:生产者发送消息到交换器,交换器根据路由key投递到相应的队列。

  6. Queue:存储消息的队列 。

  7. RoutingKey:路由键,指定消息的路由规则。

  8. BindingKey:绑定键,关联交换器和队列。

  9. Consumer:消费消息。

路由机制

  1. Direct:默认方式,根据消息的路由键完全匹配队列的绑定键来分发消息。
  2. fanout:广播模式,将消息投递到所有绑定到交换器的队列。
  3. topic:使用模糊匹配的方式根据路由键将消息分发到不同的队列中,支持通配符(*和#)进行匹配。
  4. header:不依赖路由键,而是根据消息的头部信息来进行匹配和分发。
相关推荐
止语Lab8 小时前
一次 goroutine 泄漏:pprof 说有 10 万个 goroutine,但问题不在 channel
rabbitmq
云上工程笔记8 小时前
从 0 到 1 配 OpenCode 多 Agent:7 个角色协作、视觉委托与权限隔离实战
架构
王二端茶倒水8 小时前
从千兆到万兆:宽带运营不能只卖套餐,要管用户生命周期从千兆到万兆:宽带运营需要管理用户生命周期
后端·网络协议·架构
锋行天下9 小时前
半秒开!还有谁!!!
前端·vue.js·架构
这个DBA有点耶11 小时前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
杉氧11 小时前
Compose 时代的 MVI 架构:如何用单向数据流驱动复杂 UI?
android·架构·android jetpack
杉氧12 小时前
Modifier 的艺术:为什么链式调用的顺序决定了UI 的生命周期?
android·架构·android jetpack
没落英雄16 小时前
2. 让 Agent 能读写文件、执行命令 —— LocalShellBackend 实战
前端·人工智能·架构
玉宇夕落16 小时前
embedding 位置编码 self-attention 的简单学习二
架构