API网关缓存无法正常工作

时间:2015-11-11 15:05:41

标签: caching amazon-web-services amazon-cloudfront aws-api-gateway

如何为API网关端点启用正确的缓存?

我已经启用了API缓存(请参见屏幕截图),但是当我请求网址时,响应时间与之前保持一致。

我尝试启用API缓存选项:

Cache option

并配置了Cache-Control标头:

Cache-Control header

还启用了查询参数的缓存:

Query param cache

2 个答案:

答案 0 :(得分:10)

未通过CloudFront实现API网关中的缓存。 API Gateway在您创建API时代表您创建CloudFront分配,但缓存实际上是通过使用专用缓存基础结构实现的。即使启用了缓存,您仍将继续看到"缓存未命中"来自CloudFront的标题。

答案 1 :(得分:7)

我发现AWS论坛提供了更多的见解,这有助于其他任何人。

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

  

API Gateway在后台与CloudFront集成。我们   自动为您的API创建全局CloudFront分配   以减少最终用户感知的延迟。但是,API   网关缓存在API网关运行的区域和您的网络中处理   已部署API。 CloudFront PoP接受请求,然后   发送到其原始区域的API网关,这就是API网关   将检查其缓存并尽可能返回缓存的响应。   目前,API Gateway不会在边缘使用CloudFront的缓存。