API Gateway

API Gateway 是统一入口层,负责路由、鉴权、限流、协议转换和请求聚合。在 AI Agent 应用中,它是前端和后端服务之间的统一入口。

#type / concept #status / evergreen #tech / backend #tech / architecture

[!info] related notes

API Gateway

一句话定义

API Gateway 是统一入口层,负责路由、鉴权、限流、协议转换和请求聚合。它让前端只需要知道一个地址,后端可以自由拆分服务。

核心原理

Gateway 职责

前端请求


API Gateway
    ├─ 路由: /api/chat → Go BFF, /api/auth → Auth Service
    ├─ 鉴权: 验证 JWT Token
    ├─ 限流: 每用户每分钟 60 次
    ├─ 协议转换: HTTP → gRPC
    ├─ CORS: 处理跨域
    ├─ 日志: 记录请求
    └─ 错误处理: 统一错误格式

在 AI Agent 应用中的位置

React ──→ API Gateway ──→ Go BFF ──→ Python AI Service
          (Nginx/Go)      (业务)      (Agent)

通常 Go BFF 本身就承担了 Gateway 的职责,不需要额外的独立 Gateway。

常见设计模式

1. Nginx 作为 Gateway

用 Nginx 做反向代理、限流、SSL 终止。

2. Go 作为 Gateway

Go 服务本身承担 Gateway 职责,路由到不同的内部服务。

3. 云厂商 Gateway

AWS API Gateway、Azure API Management、Cloudflare API Gateway。

常见坑

  1. Gateway 变成单点故障: 没有高可用
  2. Gateway 做太多业务逻辑: Gateway 应该只做路由和横切关注点
  3. 不做超时设置: 上游服务挂了,Gateway 一直等

参考资料

创建于 2026/6/30 更新于 2026/7/15