2. 风控网关基础

在微服务架构中,网关是所有外部流量的统一入口。风控网关在通用网关能力之上,叠加了实时风险决策层,是A/B实验的核心载体。本节从架构位置、与传统网关的差异、核心功能模块三个维度展开。

2.1 网关在微服务架构中的位置

网关位于客户端与微服务集群之间,承担路由、过滤、协议转换等职责。风控网关在此基础上,增加风险识别与阻断能力,形成“请求→网关→风控决策→路由”的闭环。

微服务架构中网关位置示意图 客户端 风控网关 鉴权 · 限流 · 规则引擎 微服务集群 用户服务 订单服务 支付服务 风控决策引擎 实时评分 · 黑白名单 放行 / 拒绝 / 人工 关键流程: 1. 客户端请求到达风控网关 2. 网关调用决策引擎进行风险评分 3. 根据决策结果放行/拒绝/标记
架构要点:风控网关与决策引擎分离部署,网关负责流量接入与策略执行,决策引擎负责复杂计算与模型推理。这种分离使得A/B实验可以独立替换决策逻辑而不影响网关稳定性。

2.2 风控网关与传统API网关的区别

传统API网关(如Kong、Zuul、Spring Cloud Gateway)主要解决路由、负载均衡、协议转换等问题;风控网关在此基础上增加了风险感知与实时决策能力。下表从多个维度进行对比:

对比维度 传统API网关 风控网关
核心职责 路由转发、负载均衡、协议适配 风险识别、实时决策、策略执行
决策时效 毫秒级(路由匹配) 毫秒级(含规则计算+模型推理)
状态管理 无状态或简单会话 有状态(滑动窗口、计数器、设备指纹)
扩展能力 插件机制(认证、限流、日志) 规则引擎、模型热部署、A/B实验平台
数据采集 基础访问日志 全量请求特征、设备指纹、行为序列
降级策略 熔断、降级、重试 风险降级、放行阈值、人工审核队列
典型产品 Kong、Zuul、Spring Cloud Gateway 自研风控网关、SaaS风控网关
关键差异:传统网关关注“能不能到达”,风控网关关注“该不该到达”。风控网关在路由之前插入风险决策层,对高风险请求直接阻断或标记,避免下游服务被恶意流量冲击。

2.3 核心功能模块

风控网关由三个核心功能模块构成:鉴权模块、限流模块、规则引擎模块。三者协同工作,形成完整的实时风控链路。

2.3.1 鉴权模块

鉴权是风控的第一道防线。风控网关的鉴权不仅验证身份合法性,还评估身份的可信度。

  • 身份认证:Token校验、签名验证、OAuth2.0、JWT解析
  • 设备指纹:采集设备ID、IP、UA、屏幕分辨率等,生成唯一设备标识
  • 行为校验:检查请求是否来自异常设备、异常IP、异常时间窗口
  • 上下文关联:将当前请求与历史行为关联,识别账号盗用、撞库攻击
实战注意:鉴权模块应支持多因子认证(MFA)的快速接入,同时要避免因鉴权失败导致正常用户被误杀。建议在鉴权阶段加入“可信设备白名单”机制,降低高频用户的验证延迟。

2.3.2 限流模块

限流是防止系统过载和恶意刷量的核心手段。风控网关的限流比传统限流更精细,支持多维度和动态调整。

限流维度 说明 典型阈值
用户维度 单个用户每秒/每分钟最大请求数 100 QPS/用户
IP维度 单个IP来源的请求上限 1000 QPS/IP
设备维度 单个设备指纹的请求频率 50 QPS/设备
接口维度 特定API接口的总请求上限 5000 QPS/接口
全局维度 网关整体吞吐量上限 100000 QPS

限流算法选择:

  • 滑动窗口:精度高,适合风控场景,避免临界突变
  • 令牌桶:允许突发流量,适合正常业务高峰
  • 漏桶:平滑流量,适合下游服务保护

2.3.3 规则引擎模块

规则引擎是风控网关的决策大脑,负责将原始请求特征转化为风险评分和处置动作。它是A/B实验的核心实验对象。

规则引擎模块内部流程 请求特征输入 特征提取 设备·IP·行为·环境 规则匹配 黑白名单 · 阈值规则 模型评分 · 策略组合 决策输出 放行/拒绝/标记 反馈闭环: 1. 决策结果写入事件日志 2. 离线分析更新规则权重 3. 规则热加载至网关内存

规则引擎的核心能力:

  • 规则热加载:支持不停机更新规则,A/B实验期间可动态切换实验组与对照组策略
  • 多策略组合:支持与、或、非、权重、优先级等逻辑组合,适应复杂风控场景
  • 模型集成:可调用外部机器学习模型(如XGBoost、神经网络)进行实时评分
  • 实验隔离:支持按用户ID、设备ID、流量比例进行实验分组,保证实验数据无偏
规则引擎与A/B实验:规则引擎是A/B实验的主要改造点。实验组可以引入新的规则组合、调整阈值、切换模型版本,对照组保持原有策略。网关通过流量染色机制将请求路由到不同规则版本,实现线上实时对比。

2.4 核心功能模块协作流程

一次完整的请求处理流程如下:

  1. 请求接入:客户端请求到达风控网关,解析HTTP/HTTPS/TCP协议
  2. 鉴权校验:验证Token/签名,提取设备指纹,判断身份可信度
  3. 限流检查:按用户、IP、设备、接口等多维度进行限流判断
  4. 特征提取:从请求中提取风控特征(IP、设备、行为序列、环境信息)
  5. 规则匹配:将特征送入规则引擎,匹配当前生效的规则版本(实验组/对照组)
  6. 决策执行:根据规则引擎输出执行放行、拒绝、标记、人工审核等动作
  7. 日志记录:将请求特征、决策结果、实验分组信息写入日志,供离线分析
性能要求:风控网关全链路延迟应控制在10ms以内(含规则引擎计算),否则会影响用户体验。建议规则引擎采用预编译模式,特征提取使用本地缓存,限流计数器使用Redis Cluster或本地滑动窗口。