新闻详情

新闻详情

首页 / 资讯中心 / 详情

rabbitmq 学习一下

发布时间:2026/9/10 4:00:36来源:尧图网络
rabbitmq 学习一下
RabbitMQ Broker mq代理在服务器上。他包含了交换机exchange-》通过路由关键字routing_key找到对应的队列queue。再给消费者。/* 声明 durable 队列若服务器上已存在同名但参数不同的队列会失败 */amqp_queue_declare(conn, CHANNEL_ID,amqp_cstring_bytes(queue),/*passive*/0, /*durable*/1,/*exclusive*/0, /*auto_delete*/0,amqp_empty_table);队列声明时durable1表示将消息保存在服务器队列上即便服务器代理Broker挂了下次连接上也能发给消费者。/* 启动消费者no_ack1 即自动 ackbroker 投递后立即从队列移除 */amqp_basic_consume(conn, CHANNEL_ID,amqp_cstring_bytes(queue),amqp_empty_bytes,/*no_local*/0, /*no_ack*/1, /*exclusive*/0,amqp_empty_table);一个queue可以绑定多个消费者┌──────────┐ ┌──────────┐ │ Producer │ │ Consumer │ │ (生产者) │ │ (消费者) │ └────┬─────┘ └────▲─────┘ │ │ │ ① publish(exchange, routing_key, body) │ ⑥ 推消息给消费者 ▼ │ ┌──────────────────────────────────────────────────────────────┐ │ RabbitMQ Broker │ │ │ │ ┌────────────┐ ②查路由表 ┌──────────┐ │ │ │ exchange │ ─────────────▶ │ queue │ │ │ │ (交换机) │ ③匹配命中复制 │ (队列) │ ──▶ ⑤存储等投 │ │ └────────────┘ └──────────┘ │ └──────────────────────────────────────────────────────────────┘ Producer 进程 Consumer 进程 ┌───────────┐ ┌───────────┐ │ app 代码 │ │ app 代码 │ │ amqp_ │ │ amqp_ │ │ publish │ │ consume │ └─────┬─────┘ └─────▲─────┘ │ │ ┌─────▼─────┐ ┌─────┴─────┐ │ rabbitmq-c│ │ rabbitmq-c│ │ 库 (TCP │ │ 库 (TCP │ │ 客户端) │ │ 客户端) │ └─────┬─────┘ └─────▲─────┘ │ │ │ TCP 连接 #1 TCP 连接 #2 │ │ (源端口随机, 目的 5172) (源端口随机, 目的 5172) │ │ │ ┌────────────────────────┐ │ └──────────▶│ RabbitMQ Broker │─────────┘ │ (TCP 服务端, :5172) │ │ ┌──────────────────┐ │ │ │ exchange/queue │ │ │ │ 路由 缓冲 │ │ │ └──────────────────┘ │ └────────────────────────┘ ▲ │ 还可能有其他 Producer / Consumer (每个都是独立 TCP 连接)┌───────────────┬──────────────────────────────────────────┐ │ exchange 类型 │ 路由规则 │ ├───────────────┼──────────────────────────────────────────┤ │ direct │ routing_key 完全等于 binding_key 才命中 │ ├───────────────┼──────────────────────────────────────────┤ │ topic │ routing_key 按 */# 模式匹配 binding_key │ ├───────────────┼──────────────────────────────────────────┤ │ fanout │ 忽略 routing_key绑了的 queue 全收 │ ├───────────────┼──────────────────────────────────────────┤ │ headers │ 按 message header 匹配不用 routing_key │ └───────────────┴──────────────────────────────────────────┘
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

LiteLLM Terraform Provider 管理 Search Tool 资源(litellm_search_tool)完整指南 2026/9/10 3:59:18

LiteLLM Terraform Provider 管理 Search Tool 资源(litellm_search_tool)完整指南

LiteLLM Terraform Provider 管理 Search Tool 资源(litellm_search_tool)完整指南 【免费下载链接】litellm The fastest, litest AI Gateway. Rust core with Python SDK. Call 100 LLM APIs in OpenAI (or native) format with cost tracking, guardr…

阅读更多 →
回声消除中的自适应滤波算法解析:NLMS、APLMS与FBLMS选型指南 2026/9/10 3:59:18

回声消除中的自适应滤波算法解析:NLMS、APLMS与FBLMS选型指南

1. 为什么回声消除离不开自适应滤波:从一个现场问题说起 做语音算法这些年,我调试过最多的场景就是免提通话。不管是车载蓝牙、会议室全向麦还是智能音箱,只要扬声器在放声,麦克风就一定会拾到从扬声器出来的声音,这就…

阅读更多 →
转账支付系统设计指南:账户体系、状态机与对账实战 2026/9/10 3:59:18

转账支付系统设计指南:账户体系、状态机与对账实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
从无标题到正式命名:内容创作与项目整理的实用方法论 2026/9/10 3:59:18

从无标题到正式命名:内容创作与项目整理的实用方法论

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
Linux 内核 DAMON_STAT 模块深度解析:基于 DAMON 的物理内存访问监控统计 2026/9/10 3:59:18

Linux 内核 DAMON_STAT 模块深度解析:基于 DAMON 的物理内存访问监控统计

Linux 内核 DAMON_STAT 模块深度解析:基于 DAMON 的物理内存访问监控统计 【免费下载链接】linux Linux kernel source tree 项目地址: https://gitcode.com/GitHub_Trending/li/linux DAMON_STAT(Data Access Monitoring Results Stat&#xff0…

阅读更多 →
VueUse until 完全指南:用 Promise 优雅等待响应式状态变化的编程模式 2026/9/10 3:56:18

VueUse until 完全指南:用 Promise 优雅等待响应式状态变化的编程模式

VueUse until 完全指南:用 Promise 优雅等待响应式状态变化的编程模式 【免费下载链接】airi 💖🧸 Self hosted, you-owned Grok Companion, a container of souls of waifu, cyber livings to bring them into our worlds, wishing to achie…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞