Основы AWS Lambda (Серия из 2 частей)
Использование услуг облачных вычислений для разработки программного обеспечения в последние годы растет, учитывая их экономическую эффективность за счет экономии за счет масштаба и гибкости, которую они обеспечивают при использовании производственных мощностей.
AWS предоставляет услуги для различных вариантов использования и требований. AWS Lambda является одним из таких сервисов. Здесь мы обсудим это с помощью примера.
AWS Lambda – это бессерверный вычислительный сервис, который позволяет запускать код без подготовки или управления серверами, создавать логику масштабирования кластера с учетом рабочей нагрузки, поддерживать интеграцию событий или управлять временем выполнения. AWS Lambda может быть классифицирована как Платформа как услуга (PaaS) или, более конкретно, как Функция как услуга (FaaS) , поскольку она предоставляет разработчикам платформу, которую они могут использовать и использовать для создания индивидуальных приложений.
Lambda запускает ваш код в вычислительной инфраструктуре высокой доступности и выполняет все функции администрирования вычислительных ресурсов, обладает высокой масштабируемостью и значительно сокращает затраты на разработку для вашего варианта использования.
Проще говоря, лямбда- это служба, управляемая событиями , и может запускаться в ответ на изменения, вызванные соответствующим событием, и не требует ручного управления ресурсами процессора для его вызова всякий раз, когда происходит такое событие.
Лямбда поддерживает несколько сред выполнения, которые можно найти здесь . Мы будем использовать Java 8 в качестве среды выполнения для нашей цели. В нашем примере всякий раз, когда видео загружается в AWS S3 (Простая служба хранения) ведро, вызывается функция лямбда, которая генерирует для него уменьшенное изображение и сохраняет его в другом ведре. Вы можете найти исходный код в репозитории для справки.
Пожалуйста, обратите внимание, что AWS S3 – это сервис, предоставляющий дешевое вторичное хранилище в облаке.
В консоли AWS Lambda нажмите на кнопку Создать функцию
На следующем экране укажите имя функции, выберите время выполнения по вашему выбору и создайте роль выполнения. Lambda создает роль выполнения по умолчанию с разрешением загружать журналы в журналы Amazon CloudWatch.
Пожалуйста, обратите внимание, что Amazon CloudWatch собирает данные мониторинга и оперативные данные в виде журналов, показателей и событий и визуализирует их с помощью автоматизированных информационных панелей.
В нашем примере мы заранее создаем роль с помощью консоли IAM и Используем существующую роль и выбираем уже созданную роль IAM из выпадающего списка.
Чтобы иметь возможность выбрать существующую роль для вышеописанного, заранее создайте роль IAM через консоль IAM.
Нажмите на ссылку Роли в консоли IAM, как показано ниже.
Нажмите на кнопку Создать роль
Затем выберите Лямбда в качестве варианта использования и нажмите на Далее: Разрешения , как указано ниже.
Заполните следующие формы. Для нашей цели эта роль будет включать следующие политики. Полный доступ AWS S3 |/политика позволяет Lambda отслеживать, когда в S3 происходит событие чтения/записи. |/Полный доступ к CloudWatch политика позволяет загружать журналы в CloudWatch при каждом вызове функции Lambda.
Нажмите на +Добавить триггер снизу и выберите S3 из следующего выпадающего списка. После добавления триггера загрузите исходный код в виде файла jar с помощью кнопки “Загрузить” на вкладке “Код”, как показано ниже.
Функция обработчика, как указано выше, имеет синтаксис
<<посылка>.<класс>::<Функция обработчика>
На вкладке “Тест” создайте Макет события из S3-введите Тип из выпадающего списка. Появится тело JSON, которое передается лямбда-функции в качестве макетного ввода , , Измените тело входного JSON и обновите Регион aws , имя корзины , арн и ключ объекта
Нажмите на кнопку “Вызвать”. Событие тестирования запускается, и журналы успеха/сбоя генерируются в AWS CloudWatch.
Это дает нам базовое представление о работе с AWS Lambda Console. Фактическая реализация лямбда-функции будет описана в отдельном блоге.
Нажмите здесь, чтобы ознакомиться с частью 2 сообщения в блоге.
Основы AWS Lambda (Серия из 2 частей)
Оригинал: “https://dev.to/prabhjeet6/aws-lambda-basics-4pb6”