SlideShare a Scribd company logo
1 of 39
ПРАКТИЧЕСКИЙ ОПЫТ
ИСПОЛЬЗОВАНИЯ AWS LAMBDA
В ВЫСОКОНАГРУЖЕННЫХ PHP-
ПРИЛОЖЕНИЯХ
Yevgen Lysenko
Concert.ua
ПРАКТИЧЕСКИЙ ОПЫТ
ИСПОЛЬЗОВАНИЯ AWS LAMBDA
В ВЫСОКОНАГРУЖЕННЫХ PHP-
ПРИЛОЖЕНИЯХ
КТО МЫ?
Concert.ua – билетный оператор №1 в Украине
v-Ticket – билетная система, в основе Concert.ua
РАЗДЕЛЕНИЕ
ОБЯЗАННОСТЕЙ
НАЧАЛЬНАЯ
АРХИТЕКТУРА
ПРОЕКТА
Б.К.Г.
MariaDB 1
MariaDB 2
MariaDB 5
MariaDB 3
MariaDB 4
Block storage
bi-daily backups
Galera Cluster
MySQL
MaxScale 1
MaxScale 2
CloudFlare
Concert.ua
Load Balancer
CloudFlare
v-Ticket
HTTPS
Balancer-1
Internal DNS1
HTTPS
WSS
WS
Balancer-2
Internal DNS2
PHP Session storage
application cache
Redis
HTTP
concertua-app01
concertua-app02
concertua-app03
(staging)
Concert.ua cluster
HTTP
vticket-app00
(API)
vticket-app01
vticket-app02
v-Ticket legacy cluster
MySQL
Block storage
volume-01-fra1
storage1
(static & logs)
NFS
Redis
PHP Session storage
application cache
ElasticSearch 1 ElasticSearch 2 ElasticSearch 3
ElasticSearch cluster
RabbitMQ srv1
Crossbar srv1
PostgreSQLPostgreSQL
Exim 1
HAProxy
Exim 2 Exim 3
Mail out cluster
AMQP
AMQP
SMTP
WAMP
over WS or TCP
SMTP
MySQL
Redis
 AMQP
vticket-core01 SMTP
MySQL
Redis
RabbitMQ
storage.concert.ua
HTTPS
CloudFlare
storage.concert.ua
HTTP
HTTP
HTTP
sentry.concert.ua
HTTPS
CloudFlare
sentry.concert.ua
vticket-worker01
vsync-common-dispatcher
vsync-common
ticket-renderer
sms-sender
email-sender
ladesk-worker
order-operation-migrator
core-auth-service
google-analytics-worker
vticket-worker02
vsync-common-dispatcher
vsync-common
ticket-renderer
sms-sender
email-sender
ladesk-worker
order-operation-migrator
core-auth-service
google-analytics-worker
Redis srv2Redis srv1
ТЕКУЩАЯ
АРХИТЕКТУРА
CONCERT.UA – ЭТО
 Билетный сайт №2 на территории экс-СССР по посещаемости
 Билетный сайт №66 в мире
 1,5-2M посещений в месяц
 Труднопредсказуемые всплески посещаемости
ЧТО ТАКОЕ LAMBDA-
ФУНКЦИЯ?
AWS Lambda позволяет запускать программный код без выделения
серверов и управления ими. Вы платите только за фактическое время
вычисления. Если программный код не исполняется, оплата не требуется.
ПРЕИМУЩЕСТВА
LAMBDA
 Практически безлимитное масштабирование
 Трата ресурсов (и денег) только за время исполнения
 При небольших нагрузках это бесплатно!
ОБЛАСТЬ
ПРИМЕНЕНИЯ FaaS
 Как замена некоторым микро-сервисам
 API
 Классические вебсайты
 Обрабока и трансформация (Kinesis, S3, DynamoDB, etc)
 Как замена cron-job (через триггер CloudWatch)
ДЛЯ ЧЕГО НЕ
ПОДХОДИТ
o Демоны или сервисы, которые должны быть постоянно запущены, а не
работать по принципу born-to-die
o Код с долгим (более нескольких секунд) временем вызова. Например пересчёт
статистики, перекодирование видео и т.п.
o Отдачи статики
‘HELLO WORLD’ НА
LAMBDA
ТРЕБОВАНИЯ К
ФУНКЦИЯМ
 Соблюдение «12 Факторов»
ПЛАТФОРМЫ,
ПРЕДОСТАВЛЯЮЩИЕ
FaaS
AWS Lambda
Azure Functions
Google Cloud Functions
Knative для Kubernetes
ЧТО ПОД КАПОТОМ
AWS LAMBDA?
What is Firecracker?
Firecracker is an open source virtualization
technology that is purpose-built for
creating and managing secure, multi-
tenant container and function-based
services that provide serverless
operational models.
NATIVE SUPPORT FOR
 Java
 Go
 PowerShell
 Node.js
 C#
 Python
 Ruby
COLD START
КОГДА ПРОИСХОДИТ
MICRO-VM DISPOSAL?
КАК ИЗБЕЖАТЬ COLD
START?
 Совершать пустые вызовы функции
СИСТЕМНЫЕ РЕСУРСЫ
o Инстансу функции выделяется от 128МБ до
3008МБ памяти
o Пропорционально выделяется ресурс vCPU таким
образом, что при 1792МБ он равен 1 vCPU
ОГРАНИЧЕНИЯ
 250МБ на функцию в распакованном виде
 По умолчанию 1000 одновременно исполняемых инстансов
 Все входящие сетевые соединения заблокированы
 Закрыт порт TCP 25 (борьба со спамом)
 Максимальное время исполнения 15 мин (по умолчанию 3 сек)
 Размер payload ограничен:
o 6 MB (synchronous)
o 256 KB (asynchronous)
 Read-only файловая система и 512МБ хранилища в /tmp
ТРИГГЕРЫ
STEP-FUNCTIONS
РАБОТА С PHP В
LAMBDA РАНЕЕ
В AWS Lambda нет native runtime для PHP
Приходилось применять фокусы, используя пакеты вроде
https://github.com/araines/serverless-php
РАБОТА С PHP В
LAMBDA СЕГОДНЯ
С ноября 2018 появилась возможность запуска custom runtimes
Появились пакеты вроде Bref:
https://bref.sh/
• PHP 7.2 и 7.3
• FPM и CLI
• Широкий набор доступных экстеншенов
• Устанавливается как Composer-пакет
• Оркестрация и деплой через Serverless
• Возможность использования Lambda Layers
• Совместим с Symfony и Laravel
MATURITY MATRIX
HELLO WORLD IN BREF
DEPLOYMENT IN BREF
WHAT IS AWS
FARGATE?
AWS Fargate is a compute engine for Amazon ECS that allows you to run containers
without having to manage servers or clusters. With AWS Fargate, you no longer have
to provision, configure, and scale clusters of virtual machines to run containers.
ЧЕМ FARGATE
ОТЛИЧАЕТСЯ ОТ
LAMBDA?
 Fargate оперирует Docker-контейнерами
 Подходит для длительно живущих задач
 Позволяет тонко выделять память и процессорные ресурсы
 Scaling происходит по устанавливаемым метрикам CPU и памяти
ГДЕ МЫ ИСПОЛЬЗУЕМ
LAMBDA?
 Приватный Analytics API (через API Gateway)
 Билетное ядро системы v-Ticket (через ALB)
ГДЕ МЫ НЕ
ИСПОЛЬЗУЕМ
LAMBDA?
 Основной сайт Concert.ua
 Публичный API v-Ticket System
ПОЛЕ ДЛЯ
ДАЛЬНЕЙШИХ
ИССЛЕДОВАНИЙ
 AWS Aurora MySQL Serverless
 AWS Aurora PostgreSQL Serverless
СКОЛЬКО ЭТО СТОИТ?
СКОЛЬКО ЭТО СТОИТ?
For comparison, we’ll use a typical workhorse instance, the m4.large instance
type. It has 2 vCPU and 8 GB RAM and costs $0.12/hr or approx $86/month
in the N. Virginia region.
Lambda Breakeven Analysis for an m4.large Instance
Yevgen Lysenko "Practical experience of using AWS Lambda in a high-loaded PHP applications"

More Related Content

What's hot

Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»
Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»
Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»Tanya Denisyuk
 
Twisted Framework - сетевые приложения в Python
Twisted Framework - сетевые приложения в PythonTwisted Framework - сетевые приложения в Python
Twisted Framework - сетевые приложения в PythonAndrey Smirnov
 
Релиз-менеджмент в Badoo (Юрий Насретдинов)
Релиз-менеджмент в Badoo (Юрий Насретдинов)Релиз-менеджмент в Badoo (Юрий Насретдинов)
Релиз-менеджмент в Badoo (Юрий Насретдинов)Ontico
 
Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...
Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...
Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...SQALab
 
Cautious: IPv6 is here / Александр Азимов (Qrator Labs)
Cautious: IPv6 is here / Александр Азимов (Qrator Labs)Cautious: IPv6 is here / Александр Азимов (Qrator Labs)
Cautious: IPv6 is here / Александр Азимов (Qrator Labs)Ontico
 
Badoo presentation-2012-rit-nasretdinov
Badoo presentation-2012-rit-nasretdinovBadoo presentation-2012-rit-nasretdinov
Badoo presentation-2012-rit-nasretdinovYuriy Nasretdinov
 
Скорость с доставкой до пользователя
Скорость с доставкой до пользователяСкорость с доставкой до пользователя
Скорость с доставкой до пользователяAnatoliy Orlov
 
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Ontico
 
Cпецкурс 2014, занятие 7. Web-приложения
Cпецкурс 2014, занятие 7. Web-приложенияCпецкурс 2014, занятие 7. Web-приложения
Cпецкурс 2014, занятие 7. Web-приложения7bits
 
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...Tanya Denisyuk
 
мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1rit2011
 
«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)
«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)
«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)AvitoTech
 
Юрий Насретдинов, Badoo
Юрий Насретдинов, BadooЮрий Насретдинов, Badoo
Юрий Насретдинов, BadooOntico
 
Kirill A Korinskiy Rit2010 No Sql Storage
Kirill A  Korinskiy Rit2010 No Sql StorageKirill A  Korinskiy Rit2010 No Sql Storage
Kirill A Korinskiy Rit2010 No Sql Storagerit2010
 
Apache Kafka and stream processing peculiarities [ru]
Apache Kafka and stream processing peculiarities [ru]Apache Kafka and stream processing peculiarities [ru]
Apache Kafka and stream processing peculiarities [ru]Vsevolod Solovyov
 
Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)
Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)
Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)Ontico
 
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)Ontico
 

What's hot (19)

Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»
Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»
Юрий Насретдинов-«Сбор логов в «облаке» в Badoo»
 
Twisted Framework - сетевые приложения в Python
Twisted Framework - сетевые приложения в PythonTwisted Framework - сетевые приложения в Python
Twisted Framework - сетевые приложения в Python
 
Релиз-менеджмент в Badoo (Юрий Насретдинов)
Релиз-менеджмент в Badoo (Юрий Насретдинов)Релиз-менеджмент в Badoo (Юрий Насретдинов)
Релиз-менеджмент в Badoo (Юрий Насретдинов)
 
Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...
Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...
Badoo в облаках. Решение для запуска cli-скриптов в облаке собственной разраб...
 
Cautious: IPv6 is here / Александр Азимов (Qrator Labs)
Cautious: IPv6 is here / Александр Азимов (Qrator Labs)Cautious: IPv6 is here / Александр Азимов (Qrator Labs)
Cautious: IPv6 is here / Александр Азимов (Qrator Labs)
 
Badoo presentation-2012-rit-nasretdinov
Badoo presentation-2012-rit-nasretdinovBadoo presentation-2012-rit-nasretdinov
Badoo presentation-2012-rit-nasretdinov
 
Скорость с доставкой до пользователя
Скорость с доставкой до пользователяСкорость с доставкой до пользователя
Скорость с доставкой до пользователя
 
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
Микросервисы: опыт использования в нагруженном проекте / Вадим Мадисон (М-Тех)
 
Cпецкурс 2014, занятие 7. Web-приложения
Cпецкурс 2014, занятие 7. Web-приложенияCпецкурс 2014, занятие 7. Web-приложения
Cпецкурс 2014, занятие 7. Web-приложения
 
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
Дмитрий Лазаренко-«Живая миграция и отказоустойчивость контейнеров в гибридно...
 
Ua
UaUa
Ua
 
мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1мои модули и патчи для Nginx. максим дунин. зал 1
мои модули и патчи для Nginx. максим дунин. зал 1
 
Cpanm
CpanmCpanm
Cpanm
 
«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)
«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)
«Миллион открытых каналов с данными по сети» – Илья Биин (Zenhotels)
 
Юрий Насретдинов, Badoo
Юрий Насретдинов, BadooЮрий Насретдинов, Badoo
Юрий Насретдинов, Badoo
 
Kirill A Korinskiy Rit2010 No Sql Storage
Kirill A  Korinskiy Rit2010 No Sql StorageKirill A  Korinskiy Rit2010 No Sql Storage
Kirill A Korinskiy Rit2010 No Sql Storage
 
Apache Kafka and stream processing peculiarities [ru]
Apache Kafka and stream processing peculiarities [ru]Apache Kafka and stream processing peculiarities [ru]
Apache Kafka and stream processing peculiarities [ru]
 
Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)
Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)
Как не надо писать приложения, основанные на протоколе TCP (Артём Гавриченков)
 
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
Движок LMDB — особенный чемпион / Юрьев Леонид (Петер-Сервис R&D)
 

Similar to Yevgen Lysenko "Practical experience of using AWS Lambda in a high-loaded PHP applications"

Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...
Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...
Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...Fwdays
 
Nginx Igor Sysoev
Nginx   Igor SysoevNginx   Igor Sysoev
Nginx Igor SysoevMedia Gorod
 
Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Ontico
 
VMUG Moscow 2014 Проблемы с дисками?
VMUG Moscow 2014 Проблемы с дисками?VMUG Moscow 2014 Проблемы с дисками?
VMUG Moscow 2014 Проблемы с дисками?Anton Zhbankov
 
Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)
Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)
Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)Ontico
 
Виртуальные устройства и наложенные сети - новый подход к организации абонент...
Виртуальные устройства и наложенные сети - новый подход к организации абонент...Виртуальные устройства и наложенные сети - новый подход к организации абонент...
Виртуальные устройства и наложенные сети - новый подход к организации абонент...Cisco Russia
 
CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...
CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...
CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...CodeFest
 
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...ForkConf
 
Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)
Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)
Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)Ontico
 
Отечественные решения на базе SDN и NFV для телеком-операторов
Отечественные решения на базе SDN и NFV для телеком-операторовОтечественные решения на базе SDN и NFV для телеком-операторов
Отечественные решения на базе SDN и NFV для телеком-операторовARCCN
 
Hosting for forbes.ru_
Hosting for forbes.ru_Hosting for forbes.ru_
Hosting for forbes.ru_drupalconf
 
2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...
2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...
2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...Yehor Herasymchuk
 
"Our experience of transferring Laravel microservices to AWS Lambda using Vap...
"Our experience of transferring Laravel microservices to AWS Lambda using Vap..."Our experience of transferring Laravel microservices to AWS Lambda using Vap...
"Our experience of transferring Laravel microservices to AWS Lambda using Vap...Fwdays
 
SOA: Строим свой service mesh
SOA: Строим свой service meshSOA: Строим свой service mesh
SOA: Строим свой service meshIvan Kruglov
 
SOA: строим свой service mesh / Иван Круглов (Booking.com)
SOA: строим свой service mesh / Иван Круглов (Booking.com)SOA: строим свой service mesh / Иван Круглов (Booking.com)
SOA: строим свой service mesh / Иван Круглов (Booking.com)Ontico
 
Extreme cloud storage on free bsd (Андрей Пантюхин)
Extreme cloud storage on free bsd (Андрей Пантюхин)Extreme cloud storage on free bsd (Андрей Пантюхин)
Extreme cloud storage on free bsd (Андрей Пантюхин)Ontico
 
Extreme Cloud Storage on FreeBSD, Андрей Пантюхин
Extreme Cloud Storage on FreeBSD, Андрей ПантюхинExtreme Cloud Storage on FreeBSD, Андрей Пантюхин
Extreme Cloud Storage on FreeBSD, Андрей ПантюхинFuenteovejuna
 

Similar to Yevgen Lysenko "Practical experience of using AWS Lambda in a high-loaded PHP applications" (20)

В облаке AWS
В облаке AWSВ облаке AWS
В облаке AWS
 
Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...
Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...
Yevgen Lysenko "AWS RDS Aurora Serverless, ECS Fargate and more serverless-pr...
 
Nginx Igor Sysoev
Nginx   Igor SysoevNginx   Igor Sysoev
Nginx Igor Sysoev
 
Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.Максим Дунин, Nginx, Inc.
Максим Дунин, Nginx, Inc.
 
VMUG Moscow 2014 Проблемы с дисками?
VMUG Moscow 2014 Проблемы с дисками?VMUG Moscow 2014 Проблемы с дисками?
VMUG Moscow 2014 Проблемы с дисками?
 
CROC cloud
CROC cloudCROC cloud
CROC cloud
 
Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)
Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)
Лучшие практики Continuous Delivery с Docker / Дмитрий Столяров (Флант)
 
Виртуальные устройства и наложенные сети - новый подход к организации абонент...
Виртуальные устройства и наложенные сети - новый подход к организации абонент...Виртуальные устройства и наложенные сети - новый подход к организации абонент...
Виртуальные устройства и наложенные сети - новый подход к организации абонент...
 
CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...
CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...
CodeFest 2010. Игумнов Е. — Особенности архитектуры веб-сервисов LAMP для выс...
 
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
(1 часть) 1С-Битрикс. Как настроить двухуровневую конфигурацию веб-приложения...
 
Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)
Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)
Практика использования NoSQL в высоконагруженном проекте (Дмитрий Ананьев)
 
Отечественные решения на базе SDN и NFV для телеком-операторов
Отечественные решения на базе SDN и NFV для телеком-операторовОтечественные решения на базе SDN и NFV для телеком-операторов
Отечественные решения на базе SDN и NFV для телеком-операторов
 
Хранилище 101
Хранилище 101Хранилище 101
Хранилище 101
 
Hosting for forbes.ru_
Hosting for forbes.ru_Hosting for forbes.ru_
Hosting for forbes.ru_
 
2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...
2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...
2021.09.04 PHP FWDays. Our experience of transferring Laravel microservices t...
 
"Our experience of transferring Laravel microservices to AWS Lambda using Vap...
"Our experience of transferring Laravel microservices to AWS Lambda using Vap..."Our experience of transferring Laravel microservices to AWS Lambda using Vap...
"Our experience of transferring Laravel microservices to AWS Lambda using Vap...
 
SOA: Строим свой service mesh
SOA: Строим свой service meshSOA: Строим свой service mesh
SOA: Строим свой service mesh
 
SOA: строим свой service mesh / Иван Круглов (Booking.com)
SOA: строим свой service mesh / Иван Круглов (Booking.com)SOA: строим свой service mesh / Иван Круглов (Booking.com)
SOA: строим свой service mesh / Иван Круглов (Booking.com)
 
Extreme cloud storage on free bsd (Андрей Пантюхин)
Extreme cloud storage on free bsd (Андрей Пантюхин)Extreme cloud storage on free bsd (Андрей Пантюхин)
Extreme cloud storage on free bsd (Андрей Пантюхин)
 
Extreme Cloud Storage on FreeBSD, Андрей Пантюхин
Extreme Cloud Storage on FreeBSD, Андрей ПантюхинExtreme Cloud Storage on FreeBSD, Андрей Пантюхин
Extreme Cloud Storage on FreeBSD, Андрей Пантюхин
 

More from Fwdays

"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y..."How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...Fwdays
 
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil TopchiiFwdays
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 
"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro SpodaretsFwdays
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
"Distributed graphs and microservices in Prom.ua", Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua", Maksym KindritskyiFwdays
 
"Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl..."Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl...Fwdays
 
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T..."How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...Fwdays
 
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ..."The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...Fwdays
 
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu..."[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...Fwdays
 
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care..."[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...Fwdays
 
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"..."4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...Fwdays
 
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast..."Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...Fwdays
 
"Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others..."Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others...Fwdays
 
"Mission (im) possible: How to get an offer in 2024?", Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?", Oleksandra MyronovaFwdays
 
"Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv..."Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv...Fwdays
 
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin..."How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...Fwdays
 

More from Fwdays (20)

"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y..."How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
"How Preply reduced ML model development time from 1 month to 1 day",Yevhen Y...
 
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
"GenAI Apps: Our Journey from Ideas to Production Excellence",Danil Topchii
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 
"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
"Distributed graphs and microservices in Prom.ua", Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi"Distributed graphs and microservices in Prom.ua",  Maksym Kindritskyi
"Distributed graphs and microservices in Prom.ua", Maksym Kindritskyi
 
"Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl..."Rethinking the existing data loading and processing process as an ETL exampl...
"Rethinking the existing data loading and processing process as an ETL exampl...
 
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T..."How Ukrainian IT specialist can go on vacation abroad without crossing the T...
"How Ukrainian IT specialist can go on vacation abroad without crossing the T...
 
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ..."The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
"The Strength of Being Vulnerable: the experience from CIA, Tesla and Uber", ...
 
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu..."[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
"[QUICK TALK] Radical candor: how to achieve results faster thanks to a cultu...
 
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care..."[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
"[QUICK TALK] PDP Plan, the only one door to raise your salary and boost care...
 
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"..."4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
"4 horsemen of the apocalypse of working relationships (+ antidotes to them)"...
 
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast..."Reconnecting with Purpose: Rediscovering Job Interest after Burnout",  Anast...
"Reconnecting with Purpose: Rediscovering Job Interest after Burnout", Anast...
 
"Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others..."Mentoring 101: How to effectively invest experience in the success of others...
"Mentoring 101: How to effectively invest experience in the success of others...
 
"Mission (im) possible: How to get an offer in 2024?", Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova"Mission (im) possible: How to get an offer in 2024?",  Oleksandra Myronova
"Mission (im) possible: How to get an offer in 2024?", Oleksandra Myronova
 
"Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv..."Why have we learned how to package products, but not how to 'package ourselv...
"Why have we learned how to package products, but not how to 'package ourselv...
 
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin..."How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
"How to tame the dragon, or leadership with imposter syndrome", Oleksandr Zin...
 

Yevgen Lysenko "Practical experience of using AWS Lambda in a high-loaded PHP applications"

  • 1. ПРАКТИЧЕСКИЙ ОПЫТ ИСПОЛЬЗОВАНИЯ AWS LAMBDA В ВЫСОКОНАГРУЖЕННЫХ PHP- ПРИЛОЖЕНИЯХ Yevgen Lysenko Concert.ua
  • 2. ПРАКТИЧЕСКИЙ ОПЫТ ИСПОЛЬЗОВАНИЯ AWS LAMBDA В ВЫСОКОНАГРУЖЕННЫХ PHP- ПРИЛОЖЕНИЯХ
  • 3. КТО МЫ? Concert.ua – билетный оператор №1 в Украине v-Ticket – билетная система, в основе Concert.ua
  • 6. MariaDB 1 MariaDB 2 MariaDB 5 MariaDB 3 MariaDB 4 Block storage bi-daily backups Galera Cluster MySQL MaxScale 1 MaxScale 2 CloudFlare Concert.ua Load Balancer CloudFlare v-Ticket HTTPS Balancer-1 Internal DNS1 HTTPS WSS WS Balancer-2 Internal DNS2 PHP Session storage application cache Redis HTTP concertua-app01 concertua-app02 concertua-app03 (staging) Concert.ua cluster HTTP vticket-app00 (API) vticket-app01 vticket-app02 v-Ticket legacy cluster MySQL Block storage volume-01-fra1 storage1 (static & logs) NFS Redis PHP Session storage application cache ElasticSearch 1 ElasticSearch 2 ElasticSearch 3 ElasticSearch cluster RabbitMQ srv1 Crossbar srv1 PostgreSQLPostgreSQL Exim 1 HAProxy Exim 2 Exim 3 Mail out cluster AMQP AMQP SMTP WAMP over WS or TCP SMTP MySQL Redis  AMQP vticket-core01 SMTP MySQL Redis RabbitMQ storage.concert.ua HTTPS CloudFlare storage.concert.ua HTTP HTTP HTTP sentry.concert.ua HTTPS CloudFlare sentry.concert.ua vticket-worker01 vsync-common-dispatcher vsync-common ticket-renderer sms-sender email-sender ladesk-worker order-operation-migrator core-auth-service google-analytics-worker vticket-worker02 vsync-common-dispatcher vsync-common ticket-renderer sms-sender email-sender ladesk-worker order-operation-migrator core-auth-service google-analytics-worker Redis srv2Redis srv1 ТЕКУЩАЯ АРХИТЕКТУРА
  • 7. CONCERT.UA – ЭТО  Билетный сайт №2 на территории экс-СССР по посещаемости  Билетный сайт №66 в мире  1,5-2M посещений в месяц  Труднопредсказуемые всплески посещаемости
  • 8. ЧТО ТАКОЕ LAMBDA- ФУНКЦИЯ? AWS Lambda позволяет запускать программный код без выделения серверов и управления ими. Вы платите только за фактическое время вычисления. Если программный код не исполняется, оплата не требуется.
  • 9. ПРЕИМУЩЕСТВА LAMBDA  Практически безлимитное масштабирование  Трата ресурсов (и денег) только за время исполнения  При небольших нагрузках это бесплатно!
  • 10. ОБЛАСТЬ ПРИМЕНЕНИЯ FaaS  Как замена некоторым микро-сервисам  API  Классические вебсайты  Обрабока и трансформация (Kinesis, S3, DynamoDB, etc)  Как замена cron-job (через триггер CloudWatch)
  • 11. ДЛЯ ЧЕГО НЕ ПОДХОДИТ o Демоны или сервисы, которые должны быть постоянно запущены, а не работать по принципу born-to-die o Код с долгим (более нескольких секунд) временем вызова. Например пересчёт статистики, перекодирование видео и т.п. o Отдачи статики
  • 16. What is Firecracker? Firecracker is an open source virtualization technology that is purpose-built for creating and managing secure, multi- tenant container and function-based services that provide serverless operational models.
  • 17. NATIVE SUPPORT FOR  Java  Go  PowerShell  Node.js  C#  Python  Ruby
  • 20. КАК ИЗБЕЖАТЬ COLD START?  Совершать пустые вызовы функции
  • 21. СИСТЕМНЫЕ РЕСУРСЫ o Инстансу функции выделяется от 128МБ до 3008МБ памяти o Пропорционально выделяется ресурс vCPU таким образом, что при 1792МБ он равен 1 vCPU
  • 22. ОГРАНИЧЕНИЯ  250МБ на функцию в распакованном виде  По умолчанию 1000 одновременно исполняемых инстансов  Все входящие сетевые соединения заблокированы  Закрыт порт TCP 25 (борьба со спамом)  Максимальное время исполнения 15 мин (по умолчанию 3 сек)  Размер payload ограничен: o 6 MB (synchronous) o 256 KB (asynchronous)  Read-only файловая система и 512МБ хранилища в /tmp
  • 25. РАБОТА С PHP В LAMBDA РАНЕЕ В AWS Lambda нет native runtime для PHP Приходилось применять фокусы, используя пакеты вроде https://github.com/araines/serverless-php
  • 26. РАБОТА С PHP В LAMBDA СЕГОДНЯ С ноября 2018 появилась возможность запуска custom runtimes Появились пакеты вроде Bref: https://bref.sh/
  • 27. • PHP 7.2 и 7.3 • FPM и CLI • Широкий набор доступных экстеншенов • Устанавливается как Composer-пакет • Оркестрация и деплой через Serverless • Возможность использования Lambda Layers • Совместим с Symfony и Laravel
  • 31. WHAT IS AWS FARGATE? AWS Fargate is a compute engine for Amazon ECS that allows you to run containers without having to manage servers or clusters. With AWS Fargate, you no longer have to provision, configure, and scale clusters of virtual machines to run containers.
  • 32. ЧЕМ FARGATE ОТЛИЧАЕТСЯ ОТ LAMBDA?  Fargate оперирует Docker-контейнерами  Подходит для длительно живущих задач  Позволяет тонко выделять память и процессорные ресурсы  Scaling происходит по устанавливаемым метрикам CPU и памяти
  • 33. ГДЕ МЫ ИСПОЛЬЗУЕМ LAMBDA?  Приватный Analytics API (через API Gateway)  Билетное ядро системы v-Ticket (через ALB)
  • 34. ГДЕ МЫ НЕ ИСПОЛЬЗУЕМ LAMBDA?  Основной сайт Concert.ua  Публичный API v-Ticket System
  • 35. ПОЛЕ ДЛЯ ДАЛЬНЕЙШИХ ИССЛЕДОВАНИЙ  AWS Aurora MySQL Serverless  AWS Aurora PostgreSQL Serverless
  • 36.
  • 38. СКОЛЬКО ЭТО СТОИТ? For comparison, we’ll use a typical workhorse instance, the m4.large instance type. It has 2 vCPU and 8 GB RAM and costs $0.12/hr or approx $86/month in the N. Virginia region. Lambda Breakeven Analysis for an m4.large Instance

Editor's Notes

  1. Меня зовут Евгений Лысенко, я со-основатель и CTO компании Concert.u Concert.ua сейчас является лидером билетного рынка страны
  2. Concert.ua – frontstore, витрина. Хранит внешнее представление ассортимента, подборки, рейтинги, консюмеров, процессит оплаты V-Ticket – склад, система. Хранит залы, продажи, билетную массу, совершает процессинг, биллинг и делает многое другое
  3. В прошлом году в своём докладе я рассказывал о том, как нам удалось преобразовать архитектуру проекта из вот этой модели…
  4. Вот в это Также хочу сделать акцент на том, что backend нашей системы написан на PHP7.2 (на данный момент), как думаю и у многих из здесь присутствующих. Поэтому я буду в дальнейшем акцентировать внимание на работе рассматриваемых технологий именно с PHP
  5. Последний пункт самый важный: это объясняет почему мы ищем и пробуем подобные технологии
  6. Каждый раз вижу в этом Half-Life  Примеры использования: Обработка потоков событий Трансформация изображений API
  7. 1млн вызовов и 400ГБ-сек в мес бесплатно ГБ-сек – интересная мера
  8. По умолчанию в Lambda вообще запрещен выхлоп бинарных данных
  9. 12 Ф – все они важны, но критически важные: №3 конфигурация через переменные окружения и №6 приложение должно быть stateless
  10. Сегодня мы подробно рассмотрим
  11. Меган Фокс вот тоже интересно что же там
  12. Firecracker runs workloads in lightweight virtual machines, called microVMs, which combine the security and isolation properties provided by hardware virtualization technology with the speed and flexibility of containers. Основан на KVM Этот движок AWS стали использовать относительно недавно и именно с ним пришли существенные улучшения как производительности, так и функционала. Отдельно стоит упомянуть lambda layers.
  13. Чего здесь нет? ) К этому мы вскоре вернёмся
  14. Хуже всего дела обстоят у C# Чем больше размер функции и меньше у неё памяти, тем дольше она стартует. В некоторых случаях это может занимать до 5 сек у даже дольше
  15. Вероятность уничтожения micro-VM после последнего вызова в минутах В целом обычно это промежуток от 5 до 10 минут
  16. Как часто? Принято каждые 5 мин Это называют «поддержкой функции тёплой» Забегая наперёд скажу, что это автоматизировано в рассматриваемом далее инструментарие
  17. ВСЕ ВХОДЯЩИЕ СОЕДИНЕНИЯ ЗАБЛОКИРОВАНЫ Обратите на это внимание. Функция не получает напрямую никаких данных извне. Только через триггеры. Об этом чуть позже Максимально 15 мин, но только не через API Gateway, там 30 сек на вызов Хранение темп-файлов и кеша в /tmp, т.к. read-only файловая система Хранение в S3 Хранение в ElastiCache (Redis/Memcache) Пред-создание и подключение layer’ов
  18. Это не все возможные триггеры Есть ещё интеграция с целым набором сторонних сервисов вроде PagerDuty или SugarCRM
  19. Задумка интересная, но пока сыровата
  20. Если захочется боли и страданий – вам сюда Обёртка nodejs
  21. На данный момент PHP не ниже 7.2, если у вас 7.1 или ещё ниже, то вам придётся использовать устаревшую версию Bref
  22. Сегодня мы подробно рассмотрим
  23. Underhyped Тоже под Firecracker Сейчас есть Fargate для ECS и начале 2020 обещают Fargate для EKS Это брат Lambda, с определёнными отличиями Похож на Google Compute Engine
  24. По своей сути призван заменить прямую работу с EC2 инстансами на ECS Сильно подешевел в последнее время и сравним с EC2 по финальной стоимости (ранее был дороже)
  25. Он пока живёт на ECS как AutoScaling группа. Планируем переводить на Fargate
  26. Глобальное исследование среди 550 компаний
  27. For most periodic or very light workloads, Lambda is dramatically less expensive than even the smallest EC2 instances. Focus on the memory and execution time that a typical transaction in your app will need to relate a given instance size to the break-even Lambda cost.