8

如何为 API Gateway 端点启用适当的缓存?

我已经启用了 API 缓存(见截图),但是当我请求 URL 时,响应时间和以前一样。

我尝试启用 API 缓存选项:

缓存选项

并配置了 Cache-Control 标头:

缓存控制标头

并且还通过查询参数启用缓存:

查询参数缓存

4

2 回答 2

13

API Gateway 中的缓存不是通过 CloudFront 实现的。API Gateway 在您创建 API 时代表您创建 CloudFront 分配,但缓存实际上是通过使用专用缓存基础设施实现的。即使启用了缓存,您仍将继续看到来自 CloudFront 的“缓存未命中”标头。

于 2015-11-19T21:17:26.880 回答
8

我发现 AWS 论坛提供了更多见解,以防它帮助其他任何人。

https://forums.aws.amazon.com/thread.jspa?threadID=195290#646425

API Gateway 在后台与 CloudFront 集成。我们会自动为您的 API 创建一个全球 CloudFront 分配,以减少最终用户感知的延迟。但是,API Gateway 缓存在 API Gateway 运行和您的 API 部署所在的区域处理。CloudFront PoP 接受请求,然后将其发送到其源区域中的 API Gateway,API Gateway 将在此处检查其缓存并在可能的情况下返回缓存的响应。目前 API Gateway 不在边缘使用 CloudFront 的缓存。

于 2016-01-13T14:05:34.783 回答