📘
推荐服务高可用架构设计实战
📚 30章 · 从入门到实战
01
高可用架构概述
基石
什么是高可用 · 可用性度量 99.9% / 99.99% · CAP理论在推荐系统中的应用
→
02
推荐系统整体架构
分层
经典分层架构 (数据·召回·排序·重排) · 各层高可用挑战
→
03
单点故障与冗余设计
SPOF
单点故障(SPOF) · 冗余设计原则 · 无状态/有状态服务冗余策略
→
04
负载均衡技术
流量调度
DNS / 四层(LVS/HAProxy) / 七层(Nginx) · 一致性哈希
→
05
限流与降级
保护
令牌桶/漏桶/滑动窗口 · 分布式限流 · 降级策略与开关设计
→
06
熔断与重试
韧性
熔断器 (Hystrix/Resilience4j) · 重试+幂等 · Exponential Backoff
→
07
超时控制
边界
连接/读取/写入超时 · 超时传播与链路超时管理
→
08
服务注册与发现
注册中心
ZooKeeper/etcd · Istio/Consul · 健康检查机制
→
09
配置中心与动态配置
热更新
Apollo/Nacos/Spring Cloud Config · 灰度发布
→
10
分布式缓存高可用
缓存
穿透/击穿/雪崩 · Redis集群(主从/哨兵/Cluster) · 本地+分布式
→
11
数据库高可用
存储
主从复制/读写分离 · 分库分表(ShardingSphere/MyCat) · 连接池优化
→
12
消息队列高可用
MQ
Kafka/RocketMQ/RabbitMQ · 可靠性/幂等性 · 死信队列
→
13
全链路压测与容量规划
压测
JMeter/Locust/SkyWalking · 数据隔离 · 弹性伸缩
→
14
故障演练与混沌工程
混沌
混沌工程原则 · 故障注入(延迟/宕机/CPU) · ChaosBlade/Mesh
→
15
监控与告警体系
可观测
Prometheus+Grafana · ELK/Loki · Jaeger/Zipkin · 告警规则
→
16
多活与异地容灾
容灾
同城双活 · 两地三中心 · 三地五中心 · DTS/Canal · 流量调度
→
17
容器化与编排高可用
K8s
Pod/Service/Deployment · HPA · 反亲和性 · PDB预算
→
18
API网关高可用
网关
Kong/APISIX/Spring Cloud Gateway · 限流鉴权 · 灰度发布
→
19
推荐特征工程高可用
特征
特征存储(Redis/FAISS/向量数据库) · 一致性校验 · 延迟处理
→
20
召回层高可用
召回
多路召回 · 超时降级 · 结果缓存 · 无状态化设计
→
21
排序层高可用
排序
模型热加载/版本管理 · 推理超时 · 规则兜底 · GPU隔离
→
22
重排层高可用
重排
打散/多样性/去重 · 超时降级 · 结果兜底
→
23
数据管道高可用
管道
Flink/Spark Streaming Checkpoint · 离线调度依赖与重跑
→
24
AB实验平台高可用
实验
哈希分桶一致性 · 配置热更新 · 数据准确性保障
→
25
安全与权限控制
安全
JWT/OAuth2 · 数据脱敏 · 防爬虫/DDoS · 安全审计
→
26
灰度发布与回滚
发布
金丝雀/蓝绿/滚动 · 版本管理 · 快速回滚机制
→
27
容量与成本优化
成本
资源利用率分析 · 弹性伸缩(定时/指标) · Spot/预留实例混部
→
28
高可用架构面试题解析
面试
设计高可用推荐系统 · 数据一致性 · 流量突增应对
→
29
案例实战
头部公司
某头部互联网公司推荐系统高可用架构演进 (单机→万台集群踩坑)
→
30
总结与展望
未来
Serverless/边缘计算/AIOps · 课程总结与学习路径推荐
→