← [ BACK_TO_NOTES ]

API Gateway

API Gateway 提供统一流量入口,可承担路由、认证、限流与协议适配;与 BFF 和防腐层职责不同。

#concept #evergreen #backend #architecture

[!info] related notes

API Gateway

API Gateway 为一组后端 API 提供统一流量入口,按配置将请求路由到服务,并可集中承担认证、限流、TLS 终止、日志或协议适配。

这些是可选职责,不是每个网关都天然具备全部能力。统一入口也不意味着后端可任意改变客户端契约。

在系统中的位置

客户端 → API Gateway → 业务服务 / BFF → 其他服务

例如聊天 API 可以经网关进入 BFF,再调用 AI Service。这只是架构示例;实现不限定 Nginx、Go 或 Python,也不说明某个现有项目已经部署该链路。

  • Gateway:统一入口和流量策略。
  • BFF:面向某类客户端适配数据与交互。
  • ACL:在不同模型之间进行语义翻译。

小系统可以在一个部署单元中承担多个角色;规模、团队边界或独立运维需求明确时再拆分。

常见实现选择

  • Nginx 等反向代理可承担路由、TLS 与部分流量控制;认证、策略管理等能力取决于模块和配置。
  • 自建服务可做聚合、认证或协议转换,但需要维护连接、重试、错误语义与监控。
  • 云厂商 API 产品提供托管能力,需按具体产品核对功能、配额和计费,不能只凭“Gateway”名称视为可互换。

关键边界

  • 网关验证凭证不替代服务内的资源授权、租户隔离与业务不变量检查。
  • CORS 是浏览器响应访问策略,不是身份认证;只验证 JWT 格式也不等于完成认证。
  • 请求聚合可以放在入口层,但核心业务状态和事务不应因此失去明确所有者。
  • 超时、重试和限流要与下游语义匹配,避免对非幂等写入自动重放。
  • 流式接口还需检查缓冲、刷新、空闲超时、事件边界与断线行为,见 sse-gateway。
  • 集中入口可能成为故障或容量瓶颈,应按需要验证高可用和容量,而不是假定多一层就更可靠。

参考

创建于 2026/6/30 更新于 2026/10/6
Digital Biome
Access

键盘导航

j / k / ↑ / ↓
选择对象
Enter / o
打开选择
/ 或 Ctrl+K
全站搜索
i / f / 1–4
筛选当前列表
g → h / l / p / t / a
首页 / 笔记 / 项目 / 工具 / About
r → 1–9
打开所选对象的关联
u
返回上一页
Esc
关闭浮层 / 取消命令;输入框内清空文本