2017-02-08 6 views
3

В настоящее время моя система загрузки изображений в Laravel 5.3 работает именно так.AWS S3: изменение размера изображения с использованием лямбда в laravel 5.3

1.User загружает изображения.

2. Измените изображение, используя библиотеку imagick.

3. Сохраните оригинал и обрезанное изображение в AWS S3.

Это хорошо работает сейчас, я хотел бы переместить второй шаг (изменение размера) с помощью AWS лямбда, но я ничего не могу найти об объединении лямбда AWS с php , однако руководства по интеграции узлов и java доступны в официальной документации.

Итак, есть ли какие-либо другие услуги (кроме aws лямбда), доступные для достижения моей функциональности?

ответ

3

На AWS Lambda вы можете использовать PHP или любой другой язык, но вам нужно инкапсулировать его в оболочку NodeJS.

К счастью, AWS предоставляет официальную, очень просто руководство о том, как это сделать: https://aws.amazon.com/blogs/compute/scripting-languages-for-aws-lambda-running-php-ruby-and-go/

Кроме того, если вы хотите, чтобы сэкономить время (не строя распределение PHP вручную, как описано в вышеупомянутой статье), вы можете использовать следующий контейнер Docker: https://github.com/dannylinden/aws-lambda-php

+1

спасибо за ваш ответ, дайте мне попробовать – Jabaa

-1

В настоящее время функции лямбда-функции AWS не поддерживают php. Поскольку вы являетесь разработчиком PHP, вы можете легко написать nodeJS-скрипт для функции изменения размера изображения. Максимум будет 12-15 строк. множество примеров также доступны для той же функциональности. S3 для автоматической настройки триггера, которую вы можете использовать для лямбда-функций. Поэтому ваша работа будет очень минимальной.

Но все же, если вы ищете альтернативное решение, вам нужно использовать экземпляр ec2, там вам нужно открыть один REST API. что API должен иметь возможность получать изображение и изменять его размер, наконец, сохранить оригинальные и переразмерные изображения в два разных ведра AWS s3 (но не рекомендуется).

Если вы хотите прямо хранить в s3-ведро из приложения (php) его самостоятельно, тогда напишите код для повторного калибровки и сохраните в буксировке отдельные ведра из вашего приложения.

+0

Это неверно, вы можете использовать PHP на AWS Lambda. –

+0

@ NinoŠkopac, пожалуйста, объясните свой ответ. – Jabaa

+1

@kamal Gadepalli. Я не понял смысла этого. Поскольку вы разработчик PHP, вы можете легко написать nodeJS-скрипт для функции изменения размера изображения. – Jabaa

 Смежные вопросы

  • Нет связанных вопросов^_^