3. 实时风控系统架构全景:分层架构与关键组件

实时风控系统需要在毫秒级时间内完成交易特征提取、规则匹配、模型评分与决策输出。为了支撑这种高吞吐、低延迟、高可用的要求,业界普遍采用分层解耦的架构设计。每一层职责清晰,通过标准化的数据接口进行通信,既保证了系统的可扩展性,也便于进行独立的稳定性保障与巡检。

架构设计核心原则: 层间解耦、无状态化、异步削峰、可观测性。

3.1 四层架构总览

实时风控系统通常划分为以下四个核心层次,从数据接入到最终决策输出,形成完整的闭环处理链路。

架构层 核心职责 关键组件 稳定性关注点
接入层 协议适配、流量整形、请求鉴权 Nginx/Kong、API Gateway、SDK 连接数、超时、限流
计算层 实时特征计算、规则引擎执行、模型推理 Flink/Spark Streaming、规则引擎、模型服务 背压、状态大小、GC
决策层 策略编排、风险评级、人工复核触发 决策引擎、策略中心、工作流引擎 策略超时、依赖降级
存储层 特征数据、规则配置、事件日志持久化 Redis、HBase、Elasticsearch、MySQL 读写延迟、数据一致性
实时风控系统四层架构图 实时风控系统分层架构全景 接入层 协议适配 · 流量整形 · 请求鉴权 · 限流熔断 组件:Nginx / API Gateway / SDK 计算层 实时特征计算 · 规则引擎 · 模型推理 组件:Flink / Drools / TensorFlow Serving 决策层 策略编排 · 风险评级 · 人工复核触发 组件:决策引擎 / 策略中心 / 工作流引擎 存储层 特征数据 · 规则配置 · 事件日志持久化 组件:Redis / HBase / Elasticsearch / MySQL 数据流:自上而下,逐层处理

3.2 关键组件与数据流详解

理解数据如何在各层之间流转,是进行异常交易巡检和稳定性保障的基础。下面我们按照数据流动的顺序,逐一剖析每个层次的关键组件。

3.2.1 接入层:流量的第一道防线

接入层是风控系统的入口,负责接收来自交易系统、支付网关、用户端等上游系统的请求。其核心组件包括:

  • API Gateway:统一入口,负责协议转换(HTTP/TCP/Thrift)、请求路由、身份鉴权与限流。
  • SDK/Agent:嵌入业务系统,负责数据采集与异步上报,实现业务与风控的解耦。
  • 流量整形模块:基于令牌桶或漏桶算法,对突发流量进行削峰填谷,保护下游计算层。
巡检要点:接入层是“木桶短板”的高发区。重点关注连接池耗尽、超时配置不合理、限流阈值是否被误触发。

3.2.2 计算层:特征与规则的实时工厂

计算层是风控系统的“大脑”,负责在毫秒级时间内完成复杂的计算任务。该层通常包含三个核心子模块:

  • 实时特征计算:基于 Flink/Spark Streaming 的流处理引擎,对原始事件进行窗口聚合、关联查询、序列模式挖掘,生成高维特征向量。
  • 规则引擎:执行由风控专家配置的“if-then”规则集,如“同一设备在1小时内登录超过5个不同账号”。
  • 模型推理服务:加载训练好的机器学习模型(如XGBoost、DNN),对特征向量进行实时评分,输出风险概率。

3.2.3 决策层:策略编排与风险评级

决策层接收计算层产出的特征与评分,结合业务上下文进行综合判断。其关键组件包括:

  • 决策引擎:支持策略的图形化编排与热加载,实现复杂的决策树、评分卡、矩阵决策。
  • 策略中心:管理策略的版本、灰度、AB测试与回滚,是策略变更的管控核心。
  • 人工复核队列:对于高置信度但无法自动判定的交易,推入队列等待人工审核。

3.2.4 存储层:多模态数据的基石

存储层为上层计算提供数据支撑,并持久化决策结果。不同数据类型使用不同的存储引擎:

数据类型 存储引擎 典型用途 稳定性指标
实时特征/缓存 Redis / Redis Cluster 设备指纹、用户画像、计数器 P99延迟 < 5ms
历史事件/明细 HBase / Cassandra 交易流水、行为日志 写入吞吐 > 10万 TPS
规则/配置 MySQL / Etcd 策略配置、黑白名单 强一致性、主从延迟 < 1s
检索/分析 Elasticsearch 异常交易检索、巡检报表 查询P99 < 100ms
实时风控系统数据流与组件交互时序 数据流与组件交互时序 业务系统 API Gateway Flink 计算 决策引擎 存储层 ① 交易请求 ② 特征请求 ③ 查询特征/配置 ④ 特征向量 ⑤ 决策结果 ⑥ 风控响应 关键路径:请求 → 特征计算 → 决策 → 响应,全链路延迟需控制在 50ms 以内 稳定性保障重点:避免存储层成为瓶颈,确保计算层无背压

3.3 分层架构下的稳定性保障要点

在了解了架构全景与数据流之后,我们需要针对每一层制定针对性的稳定性保障策略。以下是各层在异常交易巡检中需要重点关注的风险点:

  • 接入层:防止流量洪峰冲垮系统。需要配置合理的限流阈值,并实施优雅降级(如返回默认决策“放行”)。
  • 计算层:避免数据倾斜导致的任务堆积。巡检时需关注 Flink 的 Checkpoint 时长、Kafka 消费 Lag、算子背压指标。
  • 决策层:防止策略死循环或雪崩。所有策略必须设置超时时间(Timeout),并具备熔断机制。
  • 存储层:防止缓存击穿与数据库连接池耗尽。使用多级缓存(本地缓存 + 分布式缓存)来保护数据库。
常见巡检误区:只关注单层指标,忽略层间依赖。例如,存储层延迟升高,会直接导致计算层任务超时,进而引发决策层大面积降级。巡检时必须建立“端到端”的链路监控。

3.4 本章小结