在 AWS 使用 Lambda@Edge 处理图片的最佳实践

2020-08-31 12:49:56 +08:00
 foam

项目地址: https://github.com/foamzou/aws-lambda-edge-image-process

包含 docker 环境和简单的图片处理代码;欢迎大家 star 、fork 或提交 pr 以改善该实践

这是什么

类似阿里云 OSS 的图片处理服务、腾讯云的数据万象。

因为 AWS 并没有单独将图片处理单独发布服务,只提供了 lambda 配合 CloudFront 用于处理这类需求。因此我设计了一套方案用于实现图片处理的需求

有了本方案,前端可以在原有的 cdn 图片链接后面拼接参数,获取对应的缩略图、加水印等图片处理需求。

前端使用说明

url 构成:https://cdn 域名 /文件名 @<参数值 1><参数名 1>_<参数值 2><参数名 2>.期望转换的文件格式

例子: https://d1xxxxxxxx.cloudfront.net/foamzou/image/4951f0e35a37e5190e78798dcfcad984.jpg@1020w_160h_0e_1l_70q.webp

参数

注意

当总面积超过 4096px * 4096px,或者单边长度超过 4096px * 4,那么不会对图片进行缩放处理

具体方案和部署步骤

请参考 《在 AWS 使用 Lambda@Edge 处理图片的最佳实践》

2184 次点击
所在节点    程序员
3 条回复
Wien
2020-08-31 13:53:02 +08:00
写得不错,目前在小型网站上用了 s3 的静态网站托管并设定了重定向规则(未生成缩略图时重定向回服务器生成缩略图)。
foam
2020-08-31 20:24:29 +08:00
@Wien 纯前端业务吗😂
weixiangzhe
2023-04-05 22:32:00 +08:00
正在找 已 start

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/702782

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX