1
0
Fork 0
mirror of https://github.com/nickpoida/og-aws.git synced 2025-03-09 15:40:06 +00:00

Update ru.md

This commit is contained in:
Nikolay Poida 2020-03-10 22:46:01 +06:00 committed by GitHub
parent 95d92cb988
commit 8188b837b2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1520,27 +1520,27 @@ Fargate
Lambda
------
### Lambda Basics
### Основы Lambda
- 📒 [Homepage](https://aws.amazon.com/lambda/) ∙ [Developer guide](http://docs.aws.amazon.com/lambda/latest/dg/) ∙ [FAQ](https://aws.amazon.com/lambda/faqs/) ∙ [Pricing](https://aws.amazon.com/lambda/pricing/)
- **Lambda** is AWS' serverless compute offering, allowing users to define Lambda functions in a selection of runtimes that can be invoked via a variety of triggers, including SNS notifications and API Gateway invocations. Lambda is the key service that enables ['serverless' architecture on AWS](https://aws.amazon.com/lambda/serverless-architectures-learn-more/), alongside AWS API Gateway, AWS Batch, and AWS DynamoDB.
- 📒 [Домашняя страница](https://aws.amazon.com/lambda/) ∙ [Руководство пользователя](http://docs.aws.amazon.com/lambda/latest/dg/) ∙ [ЧаВо](https://aws.amazon.com/lambda/faqs/) ∙ [Расценки](https://aws.amazon.com/lambda/pricing/)
- **Lambda** предсталвяет собой предложение бессерверных вычислений в AWS, позволяющее пользователям определять функции Lambda в различных средах выполнения, которые могут быть вызваны с помощью различных триггеров, включая уведомления SNS и вызовы API Gateway. Lambda - ключевой сервис в ['бессерверной' архитектуре AWS](https://aws.amazon.com/lambda/serverless-architectures-learn-more/), вместе с AWS API Gateway, AWS Batch и AWS DynamoDB.
### Lambda Tips
### Советы по Lambda
- The idea behind 'serverless' is that users don't manage provisioning, scaling, or maintenance of the physical machines that host their application code. With Lambda, the machine that actually executes the user-defined function is abstracted as a ['container'](http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html). When defining a Lambda function, users are able to declare the amount of memory available to the function, which directly affects the physical hardware specification of the Lambda container.
- Changing the amount of memory available to your Lambda functions also affects the amount of [CPU power](https://aws.amazon.com/lambda/faqs/) available to it.
- While AWS does not offer hard guarantees around container reuse, in general it can be expected that an unaltered Lambda function will reuse a warm (previously used) container if called shortly after another invocation. Users can use this as a way to optimize their functions by smartly caching application data on initialization.
- A Lambda that hasn't been invoked in some time may not have any warm containers left. In this case, the Lambda system will have to load and initialize the Lambda code in a 'cold start' scenario, which can add significant latency to Lambda invocations.
- There are a few strategies to avoiding or mitigating cold starts, including keeping containers warm by periodic triggering and favoring lightweight runtimes such as Node as opposed to Java.
- Lambda is integrated with AWS CloudWatch and provides a logger at runtime that publishes CloudWatch events.
- Lambda offers out-of-the-box opt-in support for AWS X-Ray. X-Ray can help users diagnose Lambda issues by offering in-depth analysis of their Lambda's execution flow. This is especially useful when investigating issues calling other AWS services as X-Ray gives you a detailed and easy-to-parse [visualization of the call graph](http://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html#lambda-service-map).
- Using [timed CloudWatch events](http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions), users can use Lambda to run periodic jobs in a cron-like manner.
- Events sent to Lambda that fail processing can be managed using a [Dead Letter Queue (DLQ) in SQS.](http://docs.aws.amazon.com/lambda/latest/dg/dlq.html)
- More on serverless:
- Идея лежащая в основе 'бессерверной' концепции , что пользователи не управляют развертыванием, масштабированием или обслуживанием физических машин, на которых размещен код их приложения. С Lambda, машина, которая фактически выполняет пользовательскую функцию, абстрагируется как ['контейнер'](http://docs.aws.amazon.com/lambda/latest/dg/lambda-introduction.html). При определении функции Lambda пользователи могут объявлять объем памяти, доступный для функции, что напрямую влияет на спецификацию физического оборудования контейнера Lambda.
- Изменение объема памяти доступного вашей Lambda функции также затронит объем [CPU](https://aws.amazon.com/lambda/faqs/) доступный ей.
- Хотя AWS не предоставляет жестких гарантий относительно повторного использования контейнера, в целом можно ожидать, что неизмененная Lambda функция будет повторно использовать «теплый» (ранее использовавшийся) контейнер, если вызывается вскоре после другого вызова. Пользователи могут использовать это как способ оптимизации своих функций путем интеллектуального кэширования данных приложения при инициализации.
- Lambda функция, которая не вызывалась некоторое время, может не иметь теплых контейнеров. В этом случае Lambda должна будет загрузить и инициализировать Lambda-код в сценарии «холодного запуска», что может добавить значительную задержку к вызовам Lambda-функций.
- Существует несколько стратегий, позволяющих избежать или смягчить «холодный» запуск, в том числе поддерживать контейнеры в тепле путем периодического вызова функций, а также предпочтение облегченным средам выполнения, таким как Node.Js, а не Java.
- Lambda интегрирована с AWS CloudWatch и во время работы отправляет логи и события в CloudWatc.
- Lambda предлагает готовую поддержку AWS X-Ray из коробки. X-Ray может помочь пользователям диагностировать проблемы при выполнении Lambda-функций, предлагая углубленный анализ потока выполнения их Lambda-кода. Это особенно полезно при разборе проблем, вызываемых другими сервисами AWS, так как X-Ray дает вам подробный и простой для анализа [график вызовов](http://docs.aws.amazon.com/lambda/latest/dg/lambda-x-ray.html#lambda-service-map).
- Используя [временные события CloudWatch](http://docs.aws.amazon.com/AmazonCloudWatch/latest/events/ScheduledEvents.html#CronExpressions), пользователи могут использовать Lambda чтобы периодически запускать задачи, как в cron.
- События, отправленные в Lambda, которые не обрабатываются, могут управляться с помощью [Dead Letter Queue (DLQ) в SQS.](http://docs.aws.amazon.com/lambda/latest/dg/dlq.html)
- Больше о бессерверных вычислениях:
- [Martin Fowler's thoughts.](http://martinfowler.com/articles/serverless.html)
- [AWS Serverless Application Model (SAM)](https://github.com/awslabs/serverless-application-model), a simplification built on top of CloudFormation that can help to define, manage, and deploy serverless applications using Lambda.
- [Serverless](https://github.com/serverless/serverless), one of the most popular frameworks for building serverless applications using AWS Lambda and other serverless compute options.
- [Other helpful frameworks.](https://github.com/anaibol/awesome-serverless#frameworks)
- [AWS Serverless Application Model (SAM)](https://github.com/awslabs/serverless-application-model), упрощение, построенное на основе CloudFormation, которое может помочь описывать, управлять и развертывать бессерверные приложения с использованием Lambda.
- [Serverless](https://github.com/serverless/serverless) - один из наиболее популярных фреймворков для создания бессерверных приложений используя AWS Lambda или другой вариант бессерверных вычислений and other serverless compute options.
- [Другие полезные фреймворки.](https://github.com/anaibol/awesome-serverless#frameworks)
### Lambda Alternatives and Lock-in