Изменение размера изображений при загрузке в ковш Amazon S3

Krishna Ballabh Gupta спросил: 28 апреля 2018 в 08:36 в: php

Я разрабатываю API на PHP, и мне приходится загружать изображения с изменением размера. Как изменить размер изображений при загрузке в корзину Amazon S3?

Мне нужно загрузить максимальные размеры изображений 1920 1080


3 ответа

E.J. Brennan ответил: 28 апреля 2018 в 11:03

"AWS way" должен был бы создать уведомление о событии s3 для загружаемого вами ведра, а затем вызвать функцию Lambda каждый раз при вводе нового файла в ведро - функция лямбда сделает изменить размер и сохранить новое изображение в другое место или другое имя.

Все ваше приложение PHP должно сделать, это "положить" объект в ведро и позволить лямбда сделать все остальное - совершенно точно там есть множество примеров по всему Интернету, чтобы сделать это точно.

Krishna Ballabh Gupta ответил: 29 апреля 2018 в 06:44
является ли AWMS поддержка лямбда-функции в PHP?
pierdevara ответил: 28 апреля 2018 в 09:34

Сначала вы должны изменить размер изображений локально с помощью PHP, прежде чем загружать их на S3. Вы можете использовать уже имеющуюся библиотеку PHP для изменения размера, например, изменение размера php-изображения.

Nek ответил: 28 апреля 2018 в 11:11
Я думаю, что лучшая библиотека могла бы представить себе.readthedocs.io/en/latest.
Pankaj ответил: 28 апреля 2018 в 11:12

Я бы рекомендовал использовать службы оптимизации изображений, такие как Cloudinary, которые могут напрямую подключаться к ведро AWS. Но это доступно в платных планах только, как описано в https://support.cloudinary.com/hc/en-us/articles/202520492-Can-images-be-stored-in-my-own-S3-bucket-

Другой способ - разместить клон Imgur; другая служба оптимизации изображений на вашем собственном S3. Процесс объясняется здесь: https://hackernoon.com/building-a-highly-scalable-imgur-clone-with-lambda-and-s3-aaf9da422c3e