首页 > 解决方案 > Amazon S3 作为 CDN 从我的服务器复制图像

问题描述

我对此进行了很多搜索,但我得到的只是将 CloudFront (CDN) 与 S3 协作使用。

我想做一些不同的事情。

CloudFront 用作 CDN,其 Origin 设置为我的图像所在的域或 S3。

如果我将其设置为我的域,则存在使用我的托管空间的问题。

如果我将它与 S3 一起使用,问题是,如何轻松地将我的图像传输到 S3?对于 CDN,这是自动的,因为对 CloudFront 的每次调用都会自动从我的服务器复制图像。

CloudFront 是否可以与 S3 一起使用,但如果 S3 上不存在图像,它会将其从我的服务器复制到 S3?

或者可能是 S3 本身作为 CDN 工作(最佳解决方案)。我在一些网站上看到他们使用 s3 url 来托管他们的图片,如下所示: https ://retsimages.s3.amazonaws.com/14/A10363214_6.jpg

这怎么可能?

标签: amazon-web-servicesamazon-s3amazon-cloudfrontcdn

解决方案


如果我将其设置为我的域,则存在使用我的托管空间的问题。

比存储空间更昂贵的是让服务器坐在那里准备处理请求的成本。您的应用程序逻辑知道图像何时发生变化;是时候将它们放入 S3 中了。

如何轻松地将我的图像发送到 S3?

几乎每种语言都有一个 SDK,因此请在图像进入时上传。s3cmd sync用于移动您拥有的图像。然后你可以关掉你的服务器。

或者可能是 S3 本身作为 CDN 工作

CloudFront 可以使用客户提供的 dns 名称和匹配的证书,以便您可以使用带有 https 的自定义域。它可以集成到 S3 不能直接集成的 AWS WAF。否则,CDN 的行为类似于 s3。CloudFront 应该提供更好的缓存和端点位置,但在低容量时您会发现几乎没有功能差异。写后读也不是一致的,但 Cloudfront 会额外缓存。对于大多数用途,定价不太可能使 CloudFront 更便宜。


推荐阅读