Serverless

Лекция 24

Serverless

  • не статические сайты
  • сервера есть
  • нет необходимости администрировать
  • легко масштабироваться
  • высокая доступность

Platform as a Service

  • полный контроль над кодом
  • минимальный контроль над окружением
  • AWS Elastic Beanstalk, Heroku Apps

Backend as a Service

  • минимальный контроль над серверным кодом
  • нет контроля над окружением
  • логика описывается на стороне клиента
  • Parse, Firebase - данные
  • Auth0, AWS Cognito - аутентификация

Function as a Service

  • минимальный контроль над окружением
  • event-driven контейнеры
  • AWS Lambda, Azure Functions

Traditional

Serverless

Pros

  • можно снизить операционные затраты
  • снижение затрат на разработку
  • снижение затрат на масштабирование

Cons

  • зависимость от вендора
  • мультиаренда
  • безопасность
  • нет возможности тонкой оптимизации
  • ограничения реализаций

Cases

Cases

Cases

Demo

Isolates

Pros

  • экономия на cold start
  • экономия на context switch shared-сервера
  • экономия памяти (3Mb < 35Mb)
  • экономия денег

Context Switch

Compare with Containers

Compare with Competitors

Cons

  • надо бандлить
  • надо выбирать между JS и WASM