Какие применения есть у Lambda Layers?
“Externalise Dependencies” - …
возможность отделить библиотеки от кода приложения при помощи Layers.
Для повторного использования другими функциями.
Для ускорения процесса deployment’а.
Как делать upload кода в сервис Лямбда? Какой формат файла? Что в нём находится? Какие ограничения по размеру?
Код Лямбды вместе с библиотеками запаковывается в ZIP архив перед загрузкой в Lambda
Если сборка занимает более 50-ти MB,
то сначала upload’им свой ZIP архив в S3.
А потом ссылаемся на S3 из Лямбды.
Какие особенности есть у некоторых библиотек при работе в Lambda?
AWS SDK по-умолчанию доступны в коде Лямбда функций.AWS SDK упаковывать вместе с остальными библиотеками НЕ нужно.
Если код использует native библиотеки, то их сначала нужно скомпилировать на Amazon Linux.
Какие ограничения есть по Layers?
Максимум 5 слоёв, 250 MB total
Можно ли замонтировать EFS к Лямбде?
Лямбда функция может подключиться к EFS,
если Лямбда развёрнута в VPC.
Как Лямбда монтируется к EFS в приватной подсети?
Через EFS Access Point
Что нужно учитывать, подключая множество экземпляров Лямбд к EFS?
Больше экземпляров Лямбд = больше соеднинений.
EFS имеет connections-limit.
Какие варианты памяти (НЕ оперативной) есть для Лямбда?
Сравнить их по долговечности / макс-объёму / ограничению-прав-доступа
Что нужно знать о параллельном запуске множества экземпляров Лямбды?
Что если превысить Concurrency Limit при синхронном вызове?
ThrottleError - 429
Что если превысить Concurrency Limit при ассинхронном вызове?
event в очередь и потом будет делать retry автоматически до 6-ти часов1 сек до 5 минevent может отправиться в DQLsystem-error (500)Что такое Cold Start и зачем это знать?
Первый вызов Лябда функции возьмёт больше latency, чем последующие.
Если в execution context’е инициализируются тяжёлые объекты.
Высокая latency - это проблема.
Как можно решить проблему Cold Start’а?
Provisioned Concurrency
Есть возможность указать количество concurrent единиц функции, которые будут запущены ЗАРАНЕЕ и работать ВСЕГДА.
Тогда НЕ будет Cold Start’а, и latency всегда будет низкой.
Как можно объявить Лямбда функцию в CloudFormation?
Что такое Inline Function в CloudFormation? Какое свойство нужно указать?
Если функция очень простая, можно указать её прямо в YAML файле CF Template’а.
Используем свойствоCode → ZipFile
Что такое загрузка ZIP архива в S3 в CloudFormation? Какое свойство нужно указать?
ZIP архив с кодом Лямбды и зависимостями в S3
Используем свойстваCode → S3Bucket,Code → S3Key,Code → S3ObjectVersion
Какое неожиданное поведение можно встретить при обновлении кода Лямбда функции (в S3) в CloudFormation?
Как можно решить эту проблему?
Если код Лямбда функции обновили в S3 (передеплоили),
но при этом CloudFormation Template НЕ изменился,
то CloudFormation НЕ обновит функцию,
т.к. с точки зрения CloudFormation ничего НЕ изменилось.
Поэтому S3 Versioning рекомендован