Лямбда-функция требует большого объема памяти для изменения размера изображений с высоким разрешением

У меня есть эта настройка лямбда-функции с выделенной памятью 256 МБ и таймаутом в 1 минуту. Когда я изменяю размер изображения до размера:1 МБ, размер 9316x11466 и разрешение 72x72, глубина 8, он выходит из строя с ошибкой

2020-06-28T13:03:59.280Z 996a0234-adb1-40eb-96a5-6cd7d6d1b2bd INFO stderr data: convert: UnableToWritePixelCache '/tmp/magick-25xc6s6WqCxg6o': No space left on device @ error/cache.c/WritePixelCachePixels/5823. convert: NoImagesDefined -' @ error/convert.c/ConvertImageCommand/3300.

чтобы он заработал, мне пришлось увеличить память до 3008MB а также 2959MB был использован для изменения размера изображения.

  1. В любом случае это можно сделать, не увеличивая объем памяти функции до 30008MB?
  2. Ошибка говорит нет UnableToWritePixelCache No space left on device, размер tmp такой же, как память, выбранная в функции, или его можно увеличить?

Я просто получаю объект из ведра s3 и использую gm.resize (пробовал с toBuffer и stream). В случае toBuffer ошибкаStream yields empty buffer и с потоком я получаю ошибку выше.

Я думаю о том, чтобы попытаться использовать острый, но не уверен, что получу такую ​​же ошибку.

Кроме того, можем ли мы рассчитать размер памяти, требуемый лямбда-функцией, используя детали изображения?

0 ответов

Другие вопросы по тегам