【问题标题】:Does cache vs no-cache effect CloudFront pricing?缓存与无缓存是否会影响 CloudFront 定价?
【发布时间】:2020-01-16 06:52:16
【问题描述】:

我需要从 S3 存储桶中以低容量提供大文件 (10-50GB)。我使用 CloudFront 是因为我需要 Lambda@Edge 在请求到达 s3 存储桶之前对其进行检查。

从 AWS 文档here 我了解到,我支付了将数据传出到 Internet 的费用。我还了解 CloudFront 缓存的最大对象大小为 20GB。

我的问题是:对于小于 20GB 的文件,缓存这些文件是否对 CloudFront 的成本/定价有任何影响?将 Cache-control 标头设置为 no-cache 是否意味着响应绕过 CloudFront?我认为在边缘服务器上缓存/存储文件肯定会产生一些成本。

有一个类似的问题here,但答案没有具体讨论缓存的成本/定价。

【问题讨论】:

  • 一点点。 Cachi to CF 不收费,但可以按请求收费。一旦你设置了 no-cache 并且没有使用 CF 就不会被收费。缓存没有定价。上网时会收费。

标签: amazon-cloudfront aws-lambda-edge aws-billing


【解决方案1】:

对于小于 20 GB 的对象,无论您是否阻止 CloudFront 缓存它们(通常通过将 Cache-Control 设置为 privateno-cacheno-store 的任意组合,同时将最小 TTL 设置为默认值值 0(尽管还有其他方法)对定价没有影响,因为 CloudFront 不对缓存存储收取任何费用。虽然这可能令人惊讶,但请记住,响应仅缓存在请求它们的边缘中,并且 CloudFront 的缓存是缓存,因此是短暂的,因此 CloudFront 可以丢弃不经常看到流量的缓存对象。

阻止缓存不会绕过 CloudFront,因为 CloudFront 是处理整个请求的服务。它只是防止响应在返回给查看器时存储在缓存中。

您需要验证大于 20 GB 的对象是否可以正常工作。文档表明他们不会。

最大文件大小

CloudFront 将返回给查看器的响应正文的最大大小为 20 GB。这包括未指定 Content-Length 标头值的分块传输响应。

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/RequestAndResponseBehaviorS3Origin.html#ResponseS3MaxFileSize

【讨论】:

    猜你喜欢
    • 2018-03-11
    • 1970-01-01
    • 2020-03-05
    • 2010-12-19
    • 2013-11-11
    • 1970-01-01
    • 1970-01-01
    • 2018-04-12
    • 1970-01-01
    相关资源
    最近更新 更多