我可以使用AWS lambda来压缩上传到S3的图像吗?

时间:2017-03-04 12:50:50

标签: amazon-web-services amazon-s3 lambda aws-lambda

我有一个社交网络网站,用户可以将图片上传到他们的帖子。我知道lambda我可以调整图像大小,但是lambda压缩/优化(有损/无损)图像也可以吗?这样我的实例就不需要进行处理工作了。如果不可能,那么我可以选择优化存储在S3存储桶中的图像吗?

谢谢。

2 个答案:

答案 0 :(得分:3)

是的,这将是Lambda的一个非常典型的用途。

我会设置一个S3存储桶/位置,其中未压缩的图像上传并设置s3存储桶通知事件,每次将图像放入存储桶时都会自动触发。响应该事件,可以调用lambda函数来执行压缩和/或调整大小。

这是一个示例lambda函数,可能会或可能不会完全符合您的要求,但可能是一个很好的起点:https://www.npmjs.com/package/aws-lambda-image

以下是有关s3事件通知的一些文档:http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html

答案 1 :(得分:1)

除了在上传图片时将图片大小调整为特定尺寸,您还可以应用此解决方案动态调整图片大小:

https://aws.amazon.com/blogs/compute/resize-images-on-the-fly-with-amazon-s3-aws-lambda-and-amazon-api-gateway/