Введение в AWS Lambda для начинающих

Введение в AWS Lambda для начинающих

Давайте изучим основы AWS Lambda и пошаговое выполнение функции.

введение

Когда вы создаете приложения, вы хотите, чтобы они обеспечивали отличный пользовательский интерфейс. Чтобы волшебство произошло, вашему приложению нужен внутренний код, который запускается в ответ на события.

Но управление инфраструктурой для размещения и выполнения серверного кода требует от вас определения размера, предоставления и масштабирования группы серверов, управления обновлениями операционной системы, применения исправлений безопасности, а затем мониторинга всей этой инфраструктуры на предмет производительности и доступности.

Было бы неплохо, если бы вы могли сосредоточиться на создании отличных приложений, не беспокоясь об их инфраструктуре? Вот где на помощь приходит AWS Lambda.

Что такое AWS Lambda?

AWS Lambda — это сервис для бессерверных вычислений, который позволяет запускать код, не беспокоясь о предоставлении серверов или управлении ими. Вы можете запускать свое приложение или серверную службу с помощью AWS Lambda без необходимости администрирования. Просто загрузите свой код в Lambda, и он запустит ваш код, даже масштабируя инфраструктуру с высокой доступностью.

Код, который вы запускаете в AWS Lambda, называется лямбда-функцией. В настоящее время он поддерживает следующие языки программирования:

  • Джава
  • питон
  • С#
  • Node.js
  • идти
  • PowerShell
  • Рубин

Он также предоставляет API среды выполнения, который можно использовать для запуска функций, написанных на других (родных) языках программирования.

Для работы с AWS Lambda есть только одно необходимое условие; у вас должна быть учетная запись на AWS, откуда вы можете получить доступ к консоли управления AWS.

Вы можете позвонить Lambda — это FaaS (функция как услуга) от AWS.

Возможности AWS Lambda

Ниже приведены некоторые важные функции, предлагаемые AWS Lambda:

  • AWS Lambda легко масштабирует инфраструктуру без дополнительной настройки. Это снижает объем оперативной работы.
  • Он предлагает несколько вариантов, таких как AWS S3, CloudWatch, DynamoDB, API Gateway, Kinesis, CodeCommit и многие другие, для запуска событий.
  • Вам не нужно вкладывать деньги вперед. Вы платите только за память, используемую лямбда-функцией, и минимальные затраты на количество запросов, поэтому это рентабельно.
  • AWS Lambda защищен. Он использует AWS IAM для определения всех ролей и политик безопасности.
  • Он обеспечивает отказоустойчивость для служб, которые выполняют код и функции. Вам не нужно беспокоиться о том, что приложение не работает.

Цены на АВС Лямбда

Стоимость AWS Lambda зависит от продолжительности и памяти, используемых написанной вами лямбда-функцией. Максимум, который вы можете выделить для лямбда-функции, — 3008 МБ памяти с шагом 64 МБ. Ниже таблица цен со всеми платами памяти на 100 миллисекунд.

Как работает AWS Lambda?

  • Сначала вы создаете функцию и добавляете к ней базовую информацию, например язык программирования, который будет использоваться в функции.
  • Затем вы пишете свой код в лямбда-редакторе или загружаете его на поддерживаемом языке программирования в виде zip-файла.
  • После отправки лямбда-кода служба выполняет масштабирование емкости, установку исправлений и администрирование инфраструктуры.
  • Чтобы запустить код, вам нужно запустить лямбда-функцию с помощью внешнего сервиса AWS, который может вызывать лямбда-функцию. Например, это может быть ведро S3.
  • В течение нескольких секунд лямбда будет готова автоматически запускать вашу функцию при возникновении события. AWS Lambda запускает ваш код при вызове триггерного события. Он обеспечивает управление сервером и мониторинг для вас.
  • Если вашей функции требуется много вычислительной мощности, она выберет тип экземпляра с большей вычислительной мощностью и оперативной памятью, или, если ваш лямбда-код выполняется всего две секунды, он выберет самый низкий из возможных экземпляров, что сэкономит вам деньги и время.

Вот как работает AWS Lambda внутри. Позвольте мне показать вам демо на AWS Lambda.

Создание функции AWS Lambda

Для этой статьи я собираюсь сделать очень простую игру, используя лямбда-функцию в Node.js. Я создам лямбда-функцию, которая бросает кости, генерирует случайное число от 1 до 6 и печатает его.

  • Перейдите в Консоль управления AWS и в строке поиска введите Lambda, щелкните Lambda.

  • Появится окно функции, нажмите Создать функцию.

  • Вы получите разные варианты создания функции с их объяснением. Поскольку я создаю его с нуля, я выберу Автора с нуля.

  • После этого вам нужно заполнить некоторую необходимую информацию для этой лямбда-функции. Введите имя функции и выберите версию Node.js, которую вы хотите использовать для этой функции.
  • Также необходимо выбрать исполнительную роль. Поскольку в моей учетной записи AWS не определены существующие роли, я выберу вариант создания новой роли. Щелкните Создать объект.

  • Вы получите сообщение об успешном завершении соединения. Нажмите на окно конструктора, чтобы свернуть его.

  • Далее будет окно кода функции.
  • Вставьте код ниже в редактор. Вы также можете загрузить код с помощью zip-файла, но я использую внутренний редактор кода AVS.

  • Это простой код, который принимает только числа от 1 до 6 и использует случайную математическую функцию для генерации случайного числа и вывода его при вызове функции.
exports.handler = async (event) => {
const min = 1;
const max = 6;
const randomNum = Math.floor(Math.random() * (max - min + 1)) + min;
const out="Dice throw result is: " + randomNum;
return out;
};
  • Теперь нажмите кнопку «Тест» в правом верхнем углу. Вы получите всплывающее окно для настройки тестового события, введите имя события и нажмите «Настроить».

  • Теперь нажмите «Сохранить», а затем «Проверить».

В результате выполнения вы увидите вывод только что написанной логики функции. Выведите — результат броска игральной кости равен 2.

  • Прокрутите вверх и щелкните подробные результаты выполнения, чтобы получить полную сводку этой лямбда-функции с ожидаемым результатом. Также доступны такие сведения, как идентификатор запроса, продолжительность, продолжительность выставления счетов, настроенные ресурсы и т. д. с выводом журнала.

  • Нажмите на вкладку мониторинга, чтобы визуализировать журналы облачного мониторинга и производительность лямбда-функции за определенное время.

  • Если вы зайдете в журналы, созданные CloudWatch, вы сможете просмотреть сведения о том, что произошло при запуске лямбда-функции, которая отслеживалась CloudWatch.

Заключение

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

Вам понравилось читать статью? Как насчет того, чтобы поделиться этим с миром?

Поделиться в соцсетях