Go消息队列与异步处理实战
🎯 30章 · 从入门到高可用
v2.0
01
消息队列基础
核心概念
生产者·消费者·主题·分区 · 为什么需要MQ
→
02
Go环境与项目初始化
安装·模块·结构
Go安装配置 · Go Modules · 第一个程序
→
03
RabbitMQ入门
架构·Exchange
安装启动 · 管理界面 · Queue/Binding
→
04
Go连接RabbitMQ
amqp库
建立连接 · Channel · 声明Queue · 发送消息
→
05
RabbitMQ工作模式(一)
简单·Work
轮询分发 · 公平分发
→
06
RabbitMQ工作模式(二)
发布订阅·路由
Fanout Exchange · Direct Exchange
→
07
RabbitMQ工作模式(三)
Topic·RPC
Topic Exchange · RPC模式
→
08
RabbitMQ高级特性
ACK·死信·延迟
消息确认 · 持久化 · 死信队列 · 延迟队列
→
09
RabbitMQ实战
订单·日志
订单系统异步处理 · 日志收集系统
→
10
Kafka入门
架构·核心概念
Broker · Topic · Partition · Offset · 安装配置
→
11
Go连接Kafka
sarama库
生产者 · 消费者 · 消费组
→
12
Kafka分区与副本
策略·ISR
分区策略 · 副本机制 · ISR · Leader选举
→
13
Kafka消息可靠性
ACK·事务
ACK机制 · 幂等性 · 事务 · 不丢失配置
→
14
Kafka实战
用户行为·管道
用户行为追踪 · 实时数据管道
→
15
Redis消息队列
List·Pub/Sub·Stream
List实现 · Pub/Sub · Stream数据类型
→
16
Go操作Redis MQ
go-redis
List生产者消费者 · Stream消费者组
→
17
Redis MQ实战
任务·通知
任务队列 · 实时通知系统
→
18
NSQ入门
架构·组件
nsqd · nsqlookupd · nsqadmin · 安装启动
→
19
Go连接NSQ
go-nsq库
生产者 · 消费者 · 消息处理
→
20
NSQ实战
日志·监控
分布式日志收集 · 实时监控系统
→
21
消息序列化与协议
JSON·Protobuf·Avro
JSON · Protobuf · Avro · MessagePack对比
→
22
消息幂等性与去重
策略·ID生成
幂等性设计 · 去重策略 · 分布式ID
→
23
消息顺序性保证
全局·分区有序
全局有序 · 分区有序 · 顺序消费实现
→
24
消息积压与消费能力
扩容·背压
积压原因 · 扩容策略 · 限流与背压
→
25
消息事务
本地消息表·事务消息
本地消息表 · RocketMQ事务 · 最大努力通知
→
26
MQ监控与告警
Prometheus·Grafana
指标采集 · 可视化 · 告警规则
→
27
消息队列高可用
集群·容灾
集群部署 · 主从切换 · 故障转移 · 容灾设计
→
28
消息队列安全
SASL·ACL·TLS
认证 · 授权 · 加密传输 · 审计日志
→
29
消息队列选型
全方位对比
RabbitMQ vs Kafka vs Redis vs NSQ vs RocketMQ
→
30
综合实战
高可用异步平台
需求分析 · 架构设计 · 编码实现 · 测试部署
→