AWS Лямбда
Эта статья может чрезмерно полагаться на источники, слишком тесно связанные с предметом , что потенциально препятствует тому, чтобы статья была проверяемой и нейтральной . ( Май 2024 г. ) |
![]() | |
Разработчик(и) | Amazon.com |
---|---|
Первоначальный выпуск | 13 ноября 2014 г |
Операционная система | Кросс-платформенный |
Доступно в | Английский |
Веб-сайт | оу ![]() |
AWS Lambda — это событиями управляемая бессерверная функция «Функция как услуга» (FaaS), предоставляемая Amazon как часть веб-сервисов Amazon . Он предназначен для того, чтобы позволить разработчикам запускать код без подготовки серверов или управления ими. Он выполняет код в ответ на события и автоматически управляет вычислительными ресурсами, необходимыми для этого кода. Он был представлен 13 ноября 2014 года. [1]
Спецификация
[ редактировать ]Каждый экземпляр AWS Lambda представляет собой контейнер, созданный на основе AMI Amazon Linux (дистрибутив Linux, связанный с RHEL ) и настраиваемого времени выполнения. Node.js , Python , Java , Go , [2] Руби , [3] и C# (через .NET ) официально поддерживаются с 2018 года. [update]. В конце 2018 года появилась поддержка пользовательской среды выполнения. [4] был добавлен в AWS Lambda.
В 2019 году на ежегодной конференции AWS по облачным вычислениям (AWS re:Invent) команда AWS Lambda анонсировала «Provisioned Concurrency» — функцию, которая «сохраняет функции инициализированными и гиперготовыми к реагированию за двузначные миллисекунды». [5] Команда Lambda описала Provisioned Concurrency как «идеальную для реализации интерактивных сервисов, таких как веб- и мобильные серверные части, микросервисы , чувствительные к задержкам , или синхронные API». [6]
URL-адрес функции Lambda предоставляет Lambda уникальный и постоянный URL-адрес , доступ к которому могут получить как аутентифицированные , так и неаутентифицированные пользователи. [7]
Слои AWS Lambda позволяют разработчикам легко управлять общими компонентами и совместно использовать их в нескольких функциях Lambda. Он предназначен для обеспечения возможности повторного использования кода и упрощения развертывания библиотек, пользовательских сред выполнения и других зависимостей, которые могут потребоваться функциям Lambda. Лямбда-уровни могут быть особенно полезны в архитектурах микросервисов, где несколько функций могут использовать одни и те же зависимости. [8] Используя слои, можно гарантировать, что все функции используют одну и ту же версию библиотеки, что делает приложение более согласованным и простым в управлении.
Лучшие практики
[ редактировать ]Следование практикам DevSecOps может помочь конечным пользователям более эффективно использовать и защищать приложения на основе Lambda. [9] В приложениях на основе Lambda грань между инфраструктурой и бизнес-логикой размыта, и приложения обычно разбросаны по различным сервисам. По словам Яна Цуя, чтобы получить максимальную отдачу от усилий по тестированию, приложения на основе Lambda следует тестировать в основном на предмет их интеграции, а модульные тесты следует использовать только при наличии сложной бизнес-логики. Кроме того, чтобы упростить отладку и реализацию Lambda-интерфейса, разработчикам следует использовать и использовать хореографию между оркестровку в ограниченном контексте микросервиса ограниченными контекстами . [10]
См. также
[ редактировать ]- Событийно-ориентированная архитектура
- Бессерверная платформа
- Бессерверные вычисления
- Функция как услуга
- Лямбда-функция — концепция анонимной вычислительной функции, не привязанной к личности, давшая название Amazon Lambda.
- Облачная платформа Oracle
- Облачные функции Google
- Функция Azure
Ссылки
[ редактировать ]- ^ Барр, Джефф (13 ноября 2014 г.). «AWS Lambda – запуск кода в облаке» . Блог новостей AWS . Проверено 29 августа 2022 г.
- ^ Маннс, Крис (15 января 2018 г.). «Анонсируем поддержку Go для AWS Lambda» . Веб-сервисы Amazon . Проверено 10 декабря 2019 г.
- ^ Маннс, Крис (29 ноября 2018 г.). «Объявление о поддержке Ruby для AWS Lambda» . Веб-сервисы Amazon . Проверено 10 декабря 2019 г.
- ^ «AWS Lambda теперь поддерживает пользовательские среды выполнения и позволяет использовать общий код между функциями» . Веб-сервисы Amazon . 29 ноября 2018 г. Проверено 10 декабря 2019 г.
- ^ «Новое — обеспеченный параллелизм для лямбда-функций» . aws.amazon.com . 3 декабря 2019 года . Проверено 12 октября 2020 г.
- ^ «Новое — обеспеченный параллелизм для лямбда-функций» . Веб-сервисы Amazon . 03.12.2019 . Проверено 3 февраля 2020 г.
- ^ «URL-адреса лямбда-функций — AWS Lambda» . docs.aws.amazon.com . Проверено 1 марта 2024 г.
- ^ «Создание бессерверных микросервисов SaaS с использованием слоев AWS Lambda | Блог партнерской сети AWS (APN)» . aws.amazon.com . 11 августа 2022 г. Проверено 2 февраля 2024 г.
- ^ Катцер, Джейсон (2020). Изучение бессерверных технологий: уверенное проектирование, разработка и развертывание . О'Рейли Медиа. ISBN 978-1492057017 .
- ^ Цуй, Ян (2020). Бессерверные архитектуры на AWS (2-е изд.). Мэннинг. ISBN 978-1617295423 .