维度
| 维度 | REST | GraphQL |
|---|---|---|
| 取数方式 | 固定资源表述 | 客户端声明字段 |
| 缓存 | HTTP 缓存成熟 | 需应用层缓存与持久化查询 |
| 版本与演进 | 版本化或兼容扩展 | 模式演进,废弃字段 |
| 治理 | 按路径限流简单 | 按复杂度限流复杂 |
两者可并存:对外开放接口用 REST,内部前端聚合层用 GraphQL 是常见组合。
REST 用固定资源接口与 HTTP 缓存语义,生态成熟;GraphQL 由客户端决定字段,聚合场景灵活但服务端复杂度更高。按消费方形态与治理能力选择。
| 维度 | REST | GraphQL |
|---|---|---|
| 取数方式 | 固定资源表述 | 客户端声明字段 |
| 缓存 | HTTP 缓存成熟 | 需应用层缓存与持久化查询 |
| 版本与演进 | 版本化或兼容扩展 | 模式演进,废弃字段 |
| 治理 | 按路径限流简单 | 按复杂度限流复杂 |