我一直在阅读有关拉取和推送 CDN 的信息。我一直在使用 Cloudfront 作为调整大小图像的拉式 CDN:
- 从客户端接收图像
- 将图像放入 S3
稍后,当客户端向云端请求 URL 时,云端没有图像,因此它必须将其转发到我的服务器,其中:
- 接收请求
- 从 S3 拉取图像
- 调整图像大小
- 将图像推送回 Cloudfront
但是,这需要几秒钟,当您第一次上传美丽的图像并想看到它时,这真的很烦人。延迟似乎主要是下载/重新上传时间,而不是调整大小,这非常快。
是否可以主动将调整大小的图像推送到 Cloudfront 并将其附加到 URL,以便将来的请求可以立即获取准备好的图像?理想情况下,我想
- 从客户端接收图像
- 将图像放入 S3
- 为常见尺寸调整图像大小
- 先发制人地将这些大小推送到云端
这避免了整个下载/重新上传周期,使常见尺寸非常快,但仍然可以访问不太常见的尺寸(尽管第一次有延迟)。但是,要做到这一点,我需要将图像推送到 Cloudfront。这:
http://www.whoishostingthis.com/blog/2010/06/30/cdns-push-vs-pull/
似乎暗示它可以完成,但我所看到的其他一切都没有提到它。我的问题是:有可能吗?还是我缺少此问题的其他解决方案?