
图片优化
图像优化 基于 CloudFront、S3 和 Lambda 的客户管理型解决方案 图像优化的最常见使用案例根据用户浏览器功能自动设置格式,并允许前端调整图像大小。诸如 Next.JS 之类的流行 Web 开发框架提供响应式图像组件,这些组件可以根据设备视口自动选择图像大小。下图说明了这种常见使用案例的推荐架构: 用户向采用特定转换(例如,编码和大小)的图像发送 HTTP 请求。转换在 URL 中编码,更确切地说是作为查询参数。示例 URL 如下所示:https://exmaples.com/images/cats/mycat.jpg?format=webp&width=200。 请求由附近的 CloudFront 边缘站点处理,可提供最佳性能。在向上游传递请求之前,对查看器请求事件执行 CloudFront 函数以重写请求 URL。CloudFront Functions 是 CloudFront 的一项功能,它允许您使用 JavaScript 编写轻量级函数,以进行大规模的对延迟敏感的 CDN 自定义。在我们的架构中,我们重写 URL 以验证请求的转换,并通过排列转换顺序对 URL 进行标准化,然后将其转换为小写以提高缓存命中率。当请求自动转换时,该函数还会决定最适合应用哪种转换。例如,如果用户使用 format=auto 指令要求最优化的图像格式(JPEG、WebP 或 AVIF),则 CloudFront 函数将根据请求中存在的 Accept 标头选择最佳格式。 如果请求的图像已经缓存在 CloudFront 中,则缓存将被命中,并且图像将从 CloudFront 缓存中返回。为了提高缓存命中率,我们启用了 Origin Shield,这是 CloudFront 的一项功能,可在源服务器之前充当额外的缓存层,以进一步减轻请求负担。如果图像不在 CloudFront 缓存中,则请求将被转发到... » read more