我在AWS Lambda上遇到了一个问题,我的调整大小的图像每上传几次就会损坏。我写了一个脚本,从S3中提取并将其调整为3个大小,放入另一个存储桶中,主要是使用文件流。代码如下:
您可以看到较大的512px放大文件(调整大小)以及原始文件(200px)

和另一个大小调整为120px

我的lambda消费看起来大部分都很好。设置在同一地域,内存768mb,超时20s。对于小图像(如500px宽),脚本使用90/768mb执行大约2秒;对于更大的图像(如2000px宽),脚本执行14秒@ 648/768mb。但即使是一个小图像,调整大小对我来说也无济于事。如果我放弃文件流,只写缓冲区(就像aws example一样),那么图像处理将以缓冲区缓冲区结束,而lambda将占用太多的资源。
任何指导都是值得的!
发布于 2016-03-24 13:47:36
你的代码不是threadsafe的可能性有多大?也就是说,脚本的某些并发运行发生冲突?您显示的损坏文件的尺寸可能不正确。
https://stackoverflow.com/questions/35934679
复制相似问题