网关

0. 概述

网关(Gateway)是分布式系统中的边界控制平面,负责在“外部世界”与“内部系统”之间建立一条可治理、可观测、可控的流量通道。它既是请求生命周期的入口层,也是策略执行的集中节点,更是协议与能力的组合与编排层

从系统设计角度看,网关体系是一套围绕跨边界流量的完整治理框架,涵盖本质模型、能力模型、架构模型、类型体系、治理体系、演进趋势与选型方法。


1. 本质(Essence)

1.1 网关的本体论定义

从更高抽象层看,网关具有三重本质:

① 边界控制点(Boundary Control Point)

管理所有跨越系统边界的请求流量,使其进入“受控环境”。

② 策略执行节点(Policy Enforcement Point)

集中执行认证、鉴权、流控、安全等策略,使系统具备统一治理能力。

③ 协议与能力整合层(Protocol & Capability Composition Layer)

对协议进行识别、适配与转化,将复杂系统能力以统一接口对外暴露。

简言之:网关是流量进入系统后的第一个治理面(Governance Plane)。


2. 网关模型(Model)

网关体系可抽象为三个核心模型:

2.1 流量模型(Traffic Model)

流量穿越网关经历完整的生命周期:

入口 → 接收 → 协议解析 → 策略执行 → 路由决策 → 服务交互 → 响应加工 → 输出

2.2 策略模型(Policy Model)

所有治理能力都可归入以下三类策略:

策略类型描述示例
访问策略决定“谁能访问”鉴权、限流、黑白名单
路由策略决定“去哪里”服务发现、灰度发布、分流
安全策略决定“如何保护”攻击防护、风险识别、协议校验

2.3 边界模型(Boundary Model)

确定网关与邻接系统的协作关系:

Client → Gateway → LB → Service → Mesh → DB             ↘ WAF / CDN             ↘ Monitor / Tracing             ↘ Config Center / IAM

网关不负责:

但负责所有跨边界流量的治理。


3. 网关能力体系(Capability System)

网关能力可分为七大类,每一类又构成完整能力树。

3.1 流量接入能力

3.2 路由与转发能力

3.3 策略治理能力

3.4 安全防护能力

3.5 服务编排与聚合能力

3.6 可观测性能力

3.7 配置治理能力


4. 网关架构模型(Architecture Model)

4.1 网关三层架构

      ┌──────────────────────┐      │   控制平面(CP)       │ ← 配置中心、策略中心、管理控制台      └───────────┬──────────┘                  │      ┌───────────▼──────────┐      │   数据平面(DP)       │ ← 流量处理、路由、策略执行      └───────────┬──────────┘                  │      ┌───────────▼──────────┐      │   插件系统(Plugins) │ ← 扩展协议、策略、功能      └──────────────────────┘

4.2 插件化执行模型

插件按生命周期顺序执行:

Inbound Filters  →  Routing  →  Service Call  →  Outbound Filters

可通过“管道模型(Pipeline Model)”实现解耦与拓展。


5. 网关类型体系(Taxonomy)

完整的类型划分应遵循三维度:


5.1 按“流量方向”分类

① 南北向网关(North-South Gateway)

外部 ↔ 内部流量如:API Gateway、BFF、Ingress

② 东西向网关(East-West Gateway)

服务 ↔ 服务内部流量如:Service Mesh 中的 Sidecar / egress-gateway


5.2 按“协议层级”分类


5.3 按“能力范围”分类

① 流量网关(Traffic Gateway)

② 应用网关 / API Gateway

③ BFF Gateway

④ 数据/IoT 网关


6. 网关与周边系统的边界关系

6.1 网关 vs 反向代理(Nginx 等)

项目反向代理网关
关注点转发、负载、缓存策略、管理、治理
粒度网络层与基础能力应用层能力
场景静态资源、简单负载均衡API 体系治理

6.2 网关 vs Ingress Controller(K8s)

Ingress 更像 L7 LB,而非 API Gateway。


6.3 网关 vs Service Mesh(Istio/Envoy)


7. 网关治理体系(Governance System)

网关治理能力覆盖五个维度:

维度目标机制
流量治理稳定与性能限流、熔断、重试
安全治理安全防护鉴权、协议校验、攻击识别
服务治理稳定服务调用动态发现、负载均衡
可观测性治理可解释性Trace、Metrics、Logging
配置治理可管理性动态配置、灰度策略

组成统一的 Policy Control Plane


8. 架构演进(Evolution)

网关的演进由外部驱动力决定:

驱动力变化演进结果
服务拆分服务数量增加API Gateway 出现
协议多样化HTTP → gRPC/WS/IoTEnvoy / 多协议网关
流量复杂度提升灰度/熔断/安全流量治理框架
云原生化K8s 标准化Ingress / Gateway API
控制平面独立化策略中心化Service Mesh / Envoy Gateway
前端终端碎片化Web/App/小程序BFF 模式

未来趋势:


9. 网关选型方法论(Selection Framework)

基于以下四维度决策:

① 协议需求

② 控制平面复杂度

③ 生态绑定

④ 性能/场景需求


10. 总结(Conclusion)

网关不是“转发器”,而是:

一个优秀的网关体系应具备:

网关是系统的“咽喉”,但不应成为瓶颈。网关是策略中心,但不应承载业务。网关是边界屏障,但不应成为孤岛。”

关联文档