风控系统容灾与高可用设计

📚 共计 30 章节
01
容灾与高可用概述
为什么风控系统需要容灾?核心概念(RPO、RTO、SLA)、高可用与容灾的区别与联系。
概念SLA
02
单点故障与冗余设计
什么是单点故障?常见的单点故障场景、冗余设计原则(N+1、Active-Active、Active-Standby)。
冗余高可用
03
负载均衡技术
负载均衡的作用、常见算法(轮询、最少连接、IP哈希)、LVS与Nginx实战对比。
LVSNginx
04
数据库高可用
主从复制、读写分离、MHA与Orchestrator、MySQL Group Replication。
MySQLMHA
05
缓存高可用
Redis Sentinel、Redis Cluster、缓存穿透/击穿/雪崩的应对。
Redis缓存
06
消息队列高可用
Kafka分区与副本机制、RocketMQ主从切换、RabbitMQ镜像队列。
KafkaRocketMQ
07
服务无状态化
为什么无状态化是高可用的前提?Session外置、JWT与Token设计。
无状态JWT
08
服务注册与发现
Eureka、Consul、Nacos对比,健康检查机制。
NacosConsul
09
配置中心与配置热更新
Apollo、Nacos Config、Spring Cloud Config,配置变更的灰度发布。
Apollo灰度
10
限流与降级
限流算法(令牌桶、漏桶)、Sentinel与Hystrix实战、降级策略设计。
Sentinel降级
11
熔断与隔离
熔断器模式(Closed/Open/Half-Open)、线程池隔离与信号量隔离。
熔断隔离
12
重试与幂等性
重试策略(指数退避、抖动)、幂等性设计(唯一键、状态机)。
幂等重试
13
超时控制
连接超时、读取超时、写超时,如何设置合理的超时时间。
超时调优
14
多活架构
同城双活、两地三中心、异地多活架构对比,数据同步方案。
多活两地三中心
15
单元化架构
什么是单元化?如何划分单元?单元化与分库分表的关系。
单元化分片
16
容灾演练
混沌工程原理、ChaosBlade与Litmus工具、演练流程与复盘。
混沌ChaosBlade
17
监控与告警
监控指标(黄金信号)、Prometheus + Grafana、告警分级与通知。
PrometheusGrafana
18
日志与链路追踪
ELK/EFK架构、分布式链路追踪(Jaeger、Zipkin)、日志采样。
ELKJaeger
19
备份与恢复
全量备份、增量备份、binlog回放、跨机房备份策略。
备份binlog
20
DNS与CDN高可用
DNS轮询、GeoDNS、CDN加速与回源容灾。
DNSCDN
21
网络层容灾
BGP多线接入、VPN专线冗余、防火墙双机热备。
BGP双机热备
22
容器与K8s高可用
Pod反亲和性、HPA、PDB、多集群管理。
K8sHPA
23
云原生容灾
云厂商多Region部署、K8s Federation、Velero备份。
云原生Velero
24
数据一致性
CAP理论、BASE理论、最终一致性方案(TCC、Saga、本地消息表)。
CAPSaga
25
分布式ID生成
雪花算法、Leaf、UidGenerator,高可用下的ID生成。
雪花Leaf
26
风控规则引擎高可用
规则热加载、规则缓存、规则执行超时处理。
规则引擎热加载
27
风控模型服务高可用
模型多副本部署、模型版本管理、模型灰度发布。
模型灰度
28
风控数据管道高可用
实时特征计算、离线特征同步、数据延迟处理。
数据管道实时
29
容灾切换流程
故障发现、故障定位、切换决策、切换执行、回滚方案。
切换回滚
30
实战案例
某金融风控系统从单机房到两地三中心的演进之路。
金融演进