AWS Notes
5.6K subscribers
445 photos
42 videos
10 files
2.8K links
AWS Notes — Amazon Web Services Educational and Information Channel

Chat: https://xn--r1a.website/aws_notes_chat

Contacts: @apple_rom, https://www.linkedin.com/in/roman-siewko/
Download Telegram
Добрая пятничная история

Пару недель назад AWS выкатил поддержку CloudFront OAC для Lambda function URLs, чтобы можно было удобно ходить в приватные Лямбды.

Сначала все обрадовались, полезное дело, безопасности, все дела, но после выяснилось, что работают лишь GET запросы, а на POST/PUT отдаётся ошибка.

Потом все расстроились, потому что зря обрадовались — ведь это не фича, а баг.

Но один хороший человек упоролся и выяснил, что если посчитать SHA256 хэш и добавить его в заголовок x-amz-content-sha256, то и POST/PUT тоже работают.

https://twitter.com/rooToTheZ/status/1788606025265975505

Он написал запрос на обновление AWS документации для CloudFront и теперь там:

ℹ️ Note
If you use PUT or POST methods with your Lambda function URL, your user must provide a signed payload to CloudFront. Lambda doesn't support unsigned payloads.

В итоге расстроились и те, кто обрадовался, когда другие расстроились, потому что рано обрадовались.

Какая же здесь мораль? Документация — важна. Грамотно задокументированный баг всегда можно сделать фичей.

#CloudFront #Lambda
😁8👍7
AWS Lambda’s recursive loop detection + S3 🎉

Starting July 8, 2024, recursive invocations that pass through Lambda and S3 where S3 is NOT the event source or trigger to the Lambda function will be detected and terminated after approximately 16 recursive invocations.


#Lambda
👏19👍1
Forwarded from AWS History
10 лет назад вышла AWS Lambda. 🎉

https://aws.amazon.com/about-aws/whats-new/2014/11/13/introducing-aws-lambda/

Serverless пошёл второй десяток.

#Lambda #Serverless
🔥12🎉7👍2👎1
🆕 Lambda SnapStart + Python / .NET

https://aws.amazon.com/blogs/aws/aws-lambda-snapstart-for-python-and-net-functions-is-now-generally-available/

Фича SnapStart, ускоряющая ColdStart Лямбды в 10 раз, теперь и для Python, и для .NET.

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

P.S. Вадим Казулкин, который наклепал десятки полезных материалов по ColdStart для Java, теперь получит ещё в два раза больше работы. 😀

#Lambda
👍11
Lambda best practices:​

https://aws.amazon.com/blogs/compute/handling-billions-of-invocations-best-practices-from-aws-lambda/

🔸 Stateless functions: Ensure functions do not maintain state between invocations.​
🔹 Service over custom code: Utilize AWS services instead of writing custom solutions.​
🔸 Decouple components: Minimize dependencies between services to enhance scalability.​
🔹 Idempotent operations: Design functions to handle repeated events safely.​
🔸 On-demand processing: Process events as they occur, avoiding batch processing.​
🔹 Use Step Functions: Consider Step Functions for complex workflows.​
🔸 Multiple AWS accounts: Manage quotas and isolation by using separate accounts.

#Lambda
👍10
Вы уже переписали свои Лямбды на Rust? Нет? Тогда до августа у вас есть ещё время!

https://aws.amazon.com/blogs/compute/aws-lambda-standardizes-billing-for-init-phase/

Effective August 1, 2025, AWS will standardize billing for the initialization (INIT) phase across all AWS Lambda function configurations. This change specifically affects on-demand invocations of Lambda functions packaged as ZIP files that use managed runtimes, for which the INIT phase duration was previously unbilled.


TL;DR:

Раньше, и пока ещё, cold-start время не биллится (нахаляву). Поэтому можно было писать на Java и не париться не обращать внимания на эффективность кода Лямбд, который просто долго стартует.

Если у вас не было проблем с такими функциями, то ничего и не заметите.

Ежели заметите — стоит почитать про LLRT, оптимизацию производительности Lambda или наконец просто перейти на Step Functions. 😁

#Lambda
🤔8😁3👍2
Логи Lambda теперь дешевле

https://aws.amazon.com/blogs/compute/aws-lambda-introduces-tiered-pricing-for-amazon-cloudwatch-logs-and-additional-logging-destinations/

Если у вас их было очень много (терабайты - но зачем?), то экономия существенная.

Возможность слать логи в S3 выглядит привлекательно, но как понимаю, это в довесок к CloudWatch, а не вместо — экономия лишь на хранении (а основной расход - ingestion).

#Lambda #CloudWatch #S3
🍾2
🔥42👍6